Geom_errorbar - "No stat called StatHline"

I can not reproduce the graphs (using ggplot2 ) that I previously generated using the code below. Now I get the error "No stat called StatHline" . Is there a replacement?

 data <- data.frame( CorrectedIntensity=c(0, -0.66, -0.37, 0, -1.04, -0.38, 0, -1.89, -1.50), Day=c("Day 1", "Day 9", "Day 5", "Day 1", "Day 9", "Day 5", "Day 1", "Day 9", "Day 5")) library(ggplot2) plot_data <- ggplot() + ylim(-2.5, 0.5) + geom_point(data=data, aes(x=Day, y=CorrectedIntensity), size=7, colour="royalblue3", alpha=0.30) + geom_errorbar(data=data, aes(x=Day, y=CorrectedIntensity, ymax=..y.., ymin=..y..), stat = "hline", yintercept = "mean", width=0.3, colour="royalblue3", size=1.25) + stat_summary(data=data, aes(x=Day, y=CorrectedIntensity), fun.ymax=function(i) mean(i) + sd(i), fun.ymin=function(i) mean(i) - sd(i), geom="errorbar", width=0.1, colour="royalblue3") 

Here is what I want the plot to look like:

enter image description here

+3
source share
1 answer

I think this boils down to major changes in ggplot2 .

Here are a few options. The first uses points with shape='-' for horizontal stripes. The second uses geom_errorbar , as you used before, but through stat_summary .

 ggplot(data, aes(x=Day, y=CorrectedIntensity)) + ylim(-2.5, 0.5) + # data points geom_point(size=7, colour="royalblue3", alpha=0.30) + # +/- standard deviation stat_summary(fun.data=function(...) mean_sdl(..., mult=1), geom='errorbar', width=0.1, color='royalblue3') + # points for mean, using hyphens for point shape stat_summary(fun.y=mean, colour='royalblue3', geom='point', shape='-', size=30) + # line connecting means stat_summary(fun.y=mean, colour='royalblue3', geom='line', aes(group=1), lty=2) 

enter image description here

 ggplot(data, aes(x=Day, y=CorrectedIntensity)) + ylim(-2.5, 0.5) + # data points geom_point(size=7, colour="royalblue3", alpha=0.30) + # +/- standard deviation stat_summary(fun.data=function(...) mean_sdl(..., mult=1), geom='errorbar', width=0.1, color='royalblue3') + # lines for means, using geom=errorbar stat_summary(fun.y=mean, aes(ymin=..y.., ymax=..y..), geom='errorbar', width=0.3, color='royalblue3', size=1.25) + # line connecting means stat_summary(fun.y=mean, colour='royalblue3', geom='line', aes(group=1), lty=2) 

enter image description here

+5
source

Source: https://habr.com/ru/post/1244123/


All Articles