我有一些数据,我曾经在几个月前在ggplot中绘制没有问题,但现在它产生非常奇怪的输出。数据结构如下:
factor time.step run.number total.tigers
0.25 0 1 128
0.25 1 1 129
0.25 2 1 134
...
0.25 0 32 122
0.25 1 32 142
0.25 2 32 153
...
1 0 32 152
1 1 32 137
1 2 32 158
换句话说,我从不同total.tigers
级别(即0.25。,0.5,0.75,1)运行的模型输出factor
。它们运行240 time.steps
并复制32次(即run.number
)。我很有兴趣在total.tigers
上绘制time.step
,total.tigers
对每个run.number
级别的factor
进行总结(平均值和置信区间)。
我的代码如下:
stat_sum_df <- function(fun, geom="crossbar", ...) {
stat_summary(fun.data=fun, geom=geom, ...)
}
ggplot(data=finaldata.sub,
aes(x=time.step, y=total.tigers, color=factor, group=factor)) +
stat_sum_df("mean_cl_normal", geom = "smooth", size = 1) + xlab("Month") + ylab("Individuals") +
scale_x_continuous(breaks = seq(0, 240, by=24))
但是,我不会在total.tigers
中按顺序显示变化,而是会在time.steps
之间产生锯齿形的输出。见图。
有关解决此问题的任何建议吗?