ggplot scale alpha连续填充颜色

时间:2016-12-27 05:58:06

标签: r ggplot2 legend alpha fill

我试图创建一个alpha图,但我找不到正确的方法。我尝试了不同的组合来弄明白,我几乎在那里,但我需要一些帮助 我的问题是如何在情节中摆脱蓝色。

我的脚本是`

p <- ggplot(df, aes(x=x, y=y))
p + geom_hex(aes(alpha=..count..),bins=20)+
  scale_x_log10("ratio following/followers",
                labels = trans_format("log10", math_format(10^.x))) + 
  scale_y_log10("ratio messages received/sent", 
                labels = trans_format("log10", math_format(10^.x))) +
  theme_bw() + 
  theme(panel.background = element_blank(),
        panel.grid.major = element_blank(), panel.grid.minor=element_blank(),
        plot.background = element_blank())+ 
  #guides(fill=FALSE)+
  scale_alpha_continuous ("Counts",breaks=c(0,2000,4000,6000,8000,10000))+
  geom_vline(xintercept =1, color="red", size=0.25, linetype=5)+
  geom_hline(yintercept =1, color="red", size=0.25, linetype=5) +
  annotate('text', x=500, y=0.01, size=3, label="4\ncommon\nusers") +
  annotate('text', x=0.0001, y=0.01, size=3, label="3\nbroadcasters") +
  annotate('text', x=0.0001, y=7000, size=3, label="1\ninfluentials") +
  annotate('text', x=500, y=7000, size=3, label="2\nhidden\ninfluentials")

此脚本创建此图

This scrip creates this plot

我可以通过在脚本中激活“指南(填充= FALSE)+”行来摆脱蓝色传奇,它给出了这个:

guides(fill=FALSE)+

You can reach sample data from here

感谢@Didzis Elferts的回答。我不能确定传说和情节打破颜色。正如你可以看到这些图片10K和8K具有相同的颜色(我是对的!)所以10K应该更暗,不应该。 10K 8K

1 个答案:

答案 0 :(得分:3)

默认情况下,函数geom_hex()会将计数映射到填充,因此您将获得填充渐变(默认为蓝色)。如果您只想将地图计数设置为字母值,则必须将fill = aes() geom_hex()分配给某种颜色(例如,使用grey45)。由于fill =设置在aes()之外,因此不会有填充值的图例。

p + geom_hex(aes(alpha=..count..),bins=20, fill = "grey45")+ ...

enter image description here