【问题标题】:Remove point transparency in ggplot2 legend [duplicate]删除ggplot2图例中的点透明度[重复]
【发布时间】:2013-11-04 09:40:06
【问题描述】:

在 ggplot2 中,geom_XXX 中定义的透明度反映在图例中。例如:

df <- data.frame(x=runif(10000),  z=ifelse(runif(10000) > 0.5, 'a', 'b')); df$y <- runif(10000); df$y[df$z == 'b'] <- cos(df$x[df$z == 'b']*10)
ggplot(df) + geom_point(aes(x, y, color=z), alpha=0.1)

给出以下结果:

由于这些点非常透明,因此在图例中几乎看不到。我想从图例中删除点透明度,使图形看起来像这样:

这怎么可能?

【问题讨论】:

    标签: r ggplot2


    【解决方案1】:

    您可以使用函数guides()override.aes= 为图例条目设置alpha 值。

    ggplot(df) + geom_point(aes(x, y, color=z), alpha=0.1)+
      guides(colour = guide_legend(override.aes = list(alpha=1)))
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-02-02
    • 1970-01-01
    • 2016-05-08
    • 2013-04-14
    • 2010-10-11
    • 1970-01-01
    • 2015-01-11
    • 1970-01-01
    相关资源
    最近更新 更多