ggplot2:在图例中“取消整合”不同的geom形状

时间:2017-06-15 15:14:33

标签: r ggplot2

A=seq(10,12)
B=seq(1,3)
C=seq(20,22)
df=melt(data.frame(A,B,C))

ggplot(df,aes(variable,value))+
stat_summary(
    geom="errorbar",
    fun.data=mean_se,
    aes(color="Error bars",group=variable))+
scale_color_manual(
    values=c("red","blue"))+
geom_point(
    aes(color="Data points"))

如果查看图例,图例会显示蓝色和红色的“线+点”形状。

如果图例显示蓝色与“线”形状匹配,红色与“点”形状匹配,我希望如此。

有办法做到这一点吗?

1 个答案:

答案 0 :(得分:2)

您可以按如下方式覆盖图例美学

 ggplot(df,aes(variable,value))+
      stat_summary(
        geom="errorbar",
        fun.data=mean_se,
        aes(color="Error bars",group=variable))+
      scale_color_manual(
        values=c("red","blue"))+
      geom_point(
        aes(color="Data points")) +
      guides(fill = guide_legend(override.aes = list(linetype = 0, shape=''))
             , color = guide_legend(override.aes = list(linetype=c(0,1)
                                                         , shape=c(16,NA))))

产:

enter image description here