更改ggplot摘要统计信息的颜色

时间:2017-04-11 10:10:00

标签: r ggplot2

我想更改连接以下方框图中的平均值的颜色:

library(ggplot2)
box.df<-data.frame(myyear=rep(c(2012:2014),each=120),
                   mymonth=rep((1:12),times=10),
                   val=rnorm(120,4,1))
box.df$yyyymm<-box.df$myyear*100+box.df$mymonth
box.df$myyearnr<-as.numeric(as.factor(box.df$myyear))

p<-ggplot(box.df,aes(factor(yyyymm),val))+geom_boxplot()+aes(fill=factor(myyear))
p+theme(axis.text.x=element_text(angle=90,hjust=1))+
  stat_summary(fun.y=mean,geom="line",aes(group=1,colour="yellow"))+
  stat_summary(fun.y=mean,geom="point",aes(colour="yellow"))

..情节原则上有效,但连线是紫色,不是黄色。 我怎么能纠正这个?

Thx&amp;亲切的问候

2 个答案:

答案 0 :(得分:1)

在这种情况下,颜色不是美学,所以只需单独指定......

p+theme(axis.text.x=element_text(angle=90,hjust=1))+
  stat_summary(fun.y=mean,geom="line",aes(group=1),colour="yellow")+
  stat_summary(fun.y=mean,geom="point",colour="yellow")

答案 1 :(得分:0)

这只是aes的一个问题。此代码可以根据需要使用:

       library(ggplot2)
       box.df<-data.frame(myyear=rep(c(2012:2014),each=120),
                          mymonth=rep((1:12),times=10),
                          val=rnorm(120,4,1))
    box.df$yyyymm<-box.df$myyear*100+box.df$mymonth
    box.df$myyearnr<-as.numeric(as.factor(box.df$myyear))

       p<-ggplot(box.df, aes(factor(yyyymm), val)) +
          geom_boxplot()+aes(fill=factor(myyear))
    p+theme(axis.text.x=element_text(angle=90,hjust=1))+
      stat_summary(fun.y=mean,geom="line",aes(group=myyear),color="yellow")+
      stat_summary(fun.y=mean,geom="point",color="yellow")