[R] GGplot2 stat_summary
maettuw at students.unibe.ch
maettuw at students.unibe.ch
Wed Aug 17 16:45:46 CEST 2016
Hello guys
I have a melted dataset that has 36 different time series included. With stat.summary() I added the mean. The problem is that these 36 time series do not have the same length. Therefore I would like to plot the mean only for the length that the shortest of these 36 time series has. Example. First time series; 28 years long; 2. time series 21 years long and so so. So the mean in this example should not be longer than these 21 years. I searched the internet but no return so far. Below is the code:
melted_SWT <- melt(DF_filled_SWT,id.vars="X37")
mean_SW <- melt(apply(DF_filled_SWT,1,mean))
stat_summary(aes(shape="mean",group=1),fun.y = "mean",size = 1, geom = "line", show.legend = T)+
XIntercept <- data.frame( Intercept=c(1))
YIntercept <- data.frame( Intercept=c(0))
ggplot(data=melted_SWT,aes(x=X37,y=value,colour=variable)) + geom_line() +
ggtitle("Ä GMST during Hiatuses")+ylab("(ÄK)") + xlab("timelag")+
theme(panel.background = element_rect(fill = 'grey87')) + stat_summary(aes(shape="mean",group=1),fun.y = "mean",size = 1, geom = "line", show.legend = T)+
theme(axis.title.x = element_text( size=24, face="bold")) + theme(title = element_text( size=24, face="bold"))+
theme(axis.text.x= element_text( size=24, face="bold") ) + theme(axis.text.y= element_text( size=24, face="bold") ) +
geom_vline(aes(xintercept=XIntercept),data=Intercept) + geom_hline(aes(yintercept=YIntercept),data=Intercept)+
theme(legend.text = element_text( size=24, face="bold")) + theme(legend.margin = unit(0.7, "line")) +scale_x_continuous(breaks = c(-10,1,10,20), labels = c(-10,1,10,20))+
theme(legend.key.height=unit(2.6,"line")) + theme(legend.key.size = unit(2.3, "cm"))
data : X37 variable value
1 -10 X1 -0.1940203
2 -9 X1 -0.1578422
3 -8 X1 -0.1658450
4 -7 X1 -0.1873830
5 -6 X1 -0.1471910
6 -5 X1 -0.1160171
Thank for the help
[[alternative HTML version deleted]]
More information about the R-help
mailing list