R图不能访问数据框中的列

时间:2015-01-10 18:38:00

标签: r

我有一个名为bigDF的数据框:

                         time price side PointColor shares PointSize ShapeType
231   2014-12-10 18:07:14.000    50    B      green    287        10        16
37016 2014-12-10 18:07:14.555    50           black      0         1        10
37019 2014-12-10 18:07:15.428    50           black      0         1        10
232   2014-12-10 18:07:16.000    50    B      green    713        10        16
37020 2014-12-10 18:07:17.052    50           black      0         1        10
37021 2014-12-10 18:07:17.161    50           black      0         1        10
37023 2014-12-10 18:07:17.316    50           black      0         1        10
233   2014-12-10 18:07:26.000    50    B      green    200        10        16
37024 2014-12-10 18:07:27.066    50           black      0         1        10
234   2014-12-10 18:07:28.000    50    B      green    700        10        16
37027 2014-12-10 18:07:28.346    50           black      0         1        10
235   2014-12-10 18:07:31.000    50    B      green    100        10        16

当我去绘制价格并突出显示我得到的一些点并且错误时:

 ggplot(bigDF, aes(x=time, y=price)) + geom_line() + geom_point(   aes(shape = as.factor(ShapeType)), size=PointSize, color = PointColor)



Error in do.call("layer", list(mapping = mapping, data = data, stat = stat,  : 
  object 'PointSize' not found

为什么找不到磅值?它在数据框中?

谢谢。

1 个答案:

答案 0 :(得分:2)

ggplot2只能找到data的列(如果您在DF$column中引用它们,则不会明确指定aes)。我相信你想要geom_point(aes(shape = as.factor(ShapeType), size=PointSize, color = PointColor))。注意括号的不同放置。另请注意,这会将这些变量映射到sizecolor。看起来您还想使用as.factor并使用scale_color_manualscale_size_manual。我建议学习一些ggplot2教程。