【问题标题】:Modifying the shape for a subset of points with ggplot2使用 ggplot2 修改点子集的形状
【发布时间】:2011-12-21 00:06:16
【问题描述】:

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

这是我的起始情节:

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

使用mtcars 数据集,我只是简单地包含了各种形状、颜色和大小。现在我想补充的是所有点周围的一些区别标记,carb==8。例如,在这些点周围添加一个黑色大圆圈。

在做

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

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

对于这个问题的任何建议,我将不胜感激。

【问题讨论】:

    标签: r ggplot2


    【解决方案1】:

    与其最初将变量放在 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)  
    

    【讨论】:

    • 好。就个人而言,我倾向于将所需的原始数据子集传递给 geom,例如 geom_point(data = subset(mtcars,carb == 8),aes(...)),并考虑到 OP 的代码这种可能性,它可能值得指出。
    • 太棒了!这正是我想要的正是,而且非常简单。谢谢!
    • 作为一个子问题,我如何编辑图例以表示黑色圆圈在 carb=8 周围?
    猜你喜欢
    • 1970-01-01
    • 2014-11-05
    • 1970-01-01
    • 2010-12-01
    • 2023-03-28
    • 1970-01-01
    • 2021-03-26
    • 2023-02-04
    • 1970-01-01
    相关资源
    最近更新 更多