如何在散点图上创建单个更平滑的线而不是多个?

时间:2014-04-23 16:52:53

标签: r ggplot2

如何在散点图上创建单个平滑器而不是多个?

以下是我用来绘制钻石数据集的克拉,价格和颜色的方法。

ggplot(diamonds, aes(x = carat, y = price, color=factor(clarity))) + 
  geom_point() + 
  stat_smooth()

(我无法发布图片,因为我是这个网站的新手,但这里是我结果的链接)

http://tinypic.com/r/2iw65bb/8

如何在所有数据上获得更平滑的曲线,而不是每个清晰度都有一个,就像它现在给我的一样?另外,我想删除标准错误着色。有人可以帮助我吗?

1 个答案:

答案 0 :(得分:3)

将着色放在geom_point()内。这样可以更平滑地应用于完整数据集,而单独的着色仅适用于geom_point()。通常,当您想要将某些内容应用于所有图层时,请将其置于对ggplot的初始调用中。如果您希望某些内容仅应用于单个图层(在这种情况下,通过清晰度着色点图层),请将其放在该图层中。

ggplot(diamonds, aes(x = carat, y = price)) + 
       geom_point(aes(color=factor(clarity))) + stat_smooth()

删除标准错误着色:

ggplot(diamonds, aes(x = carat, y = price)) + 
       geom_point(aes(color=factor(clarity))) + stat_smooth(se=FALSE)