为什么ggplot中的这个命令会返回错误?

时间:2013-06-25 15:54:06

标签: r ggplot2 layer

我正在学习ggplot2,我不明白为什么这不起作用:

p <- ggplot(diamonds, aes(x = carat))
p <- p + layer(
     geom = "point",
     stat = "identity"
)
p
Error in as.environment(where) : 'where' is missing

你知道为什么吗?

2 个答案:

答案 0 :(得分:7)

我认为问题在于您没有指定y值的用途。 ggplot2没有与基本图形相同的默认值,用于根据索引值绘制点。要将geom_point()stat="identity"一起使用,您需要以下内容:

p<-ggplot(diamonds, aes(x=carat, y=cut))
p+layer(geom="point", stat="identity")

或更常见

p+geom_point(stat="identity")

或者您想要尝试绘制数据。

答案 1 :(得分:2)

通常,您不会使用layer来构建情节。相反,您使用geomstatp + geom_point()将绘制您正在寻找的内容。我建议您完成gplot2文档中的一些示例。