我有一个长格式的数据帧df
(每年多次观察)。我想以置信区间来绘制多年中每年变量length
的平均值。我使用以下代码:
ggplot(df[df$year>2004,],aes(x=year, y=length)) +
stat_summary(fun.data = "mean_cl_boot", geom = "smooth") +
xlab("") + ylab("Report Length") +
scale_x_continuous(breaks = seq(2005, max(df$year), by = 2))
我上次运行此代码时,它给出了我想要的确切图形:,但是这次没有显示置信区间:我没有更改代码,但是我确实更新了所有软件包,但现在我无法获得置信区间。
答案 0 :(得分:3)
按照@aosmith的建议添加se = TRUE
解决了该问题。现在的代码如下所示:
ggplot(df[df$year>2004,],aes(x=year, y=length)) +
stat_summary(fun.data = "mean_cl_boot", geom = "smooth", se = TRUE) +
xlab("") + ylab("Report Length") +
scale_x_continuous(breaks = seq(2005, max(df$year), by = 2))
尚不清楚为什么在不指定se = TRUE
的情况下可以更早地工作并且现在不起作用。