使用ggplot2修改点子集的形状

时间:2011-12-21 00:06:16

标签: r ggplot2

我正在尝试绘制一个沿大量维度变化的大散点图。

这是我的首发情节:

 p <- ggplot(mtcars, aes(wt, mpg, shape=cyl, colour=gear, size=carb)) +
      geom_point()

Sample plot with multiple variables

使用mtcars数据集,我只是包含各种形状,颜色和大小。现在我要添加的是所有点的区别标记,碳水化合物== 8。例如,在这些点附近添加一个大黑圈。

p + geom_point() + geom_point(colour="black", shape=1, size=5)

很接近,因为它可以获得我想要的圆圈,但是所有的点都会得到圆圈,我想把它限制在一些点上。

我非常感谢对此问题的任何建议。

1 个答案:

答案 0 :(得分:22)

不是最初将变量放在ggplot函数中,而是尝试为您添加的每个图层单独映射变量。

p <- ggplot(data = mtcars)+
geom_point(aes(wt, mpg, shape=as.factor(cyl), colour=gear, size=carb))+
geom_point(aes(wt[carb==8], mpg[carb==8]), colour="black", shape=1, size=7)  

img