ggplot2 stat_summary_bin中的错误栏

时间:2016-12-29 05:15:15

标签: r ggplot2

我试图在10个箱子中平均时间序列数据并绘制箱子平均值图。

使用ggplot2,如何使用stat_summary_bin()覆盖错误栏?

以下是我的尝试:

# My data
load("xyz.Rdata")

str(df)
# data.frame':  125 obs. of  3 variables:
# $ xdata : num  -0.0209 -0.04 1.4145 0.7419 0.9393 ...
# $ ydata : num  -19.78 -23.29 8.86 16.04 11.65 ...
# $ ir.fac: Factor w/ 3 levels "irh","irl","irm": 2 2 3 3 3 1 3 3 3 2 ...

# Graph
ggplot(df) + 
stat_summary_bin(aes(x = xdata, y = ydata, color= ir.fac),
                 fun.y = "mean",
                 bins= 10, size= 0.5, 
                 geom= 'line') +
stat_summary_bin(aes(x = xdata, y = ydata, color = ir.fac),
                 fun.y = "mean",
                 bins= 10, size= 2, 
                 geom= "point")

1 个答案:

答案 0 :(得分:1)

以下是使用内置iris数据框的示例。 fun.data=mean_se默认情况下给出一个错误条等于+/- 1标准错误的点。要将此更改为1.96标准错误,请将参数fun.args=list(mult=1.96)添加到stat_summary_bin

library(ggplot2)
theme_set(theme_classic())

pd=position_dodge(0.07)

ggplot(iris) + 
  stat_summary_bin(aes(x = Sepal.Width, y = Sepal.Length, color= Species),
                   fun.y = "mean", position=pd,
                   bins= 10, size=0.8, 
                   geom= "line") +
  stat_summary_bin(aes(x = Sepal.Width, y = Sepal.Length, color= Species),
                   fun.data = mean_se, position=pd,
                   bins= 10, size= 0.4) 

enter image description here

如果您需要自举置信区间而不是传统的标准错误,则可以使用fun.data=mean_cl_boot代替fun.data=mean_se,默认情况下会提供95%CI。