r - 在ggplot上绘制均值的置信区间
问题描述
我有 10 个不同的试验(每个试验都有自己的数据集)。我已经找到了从模型中获取的预测值,并使用预测值创建了一个新列。
我将每个试验的所有 x、y 和 predict.y 值限制在一个数据帧中rbind()
我想绘制具有相同 x 值(预测值)的所有 y 值的平均值,并使用 geom_ribbon 而不是误差线绘制置信区间。
我已经提到了这个链接:用 ggplot 绘制带有置信区间的平均值,但是,当我绘制stat_summary(geom="ribbon", fun.data=mean_cl_normal, fun.args=list(conf.int=0.95), fill="lightblue")
ggplot 时,它没有绘制任何东西,但它也没有出现任何错误,所以我不确定出了什么问题。
是否有另一种方法可以使用不同的代码获得相同的结果?还是我限制值和数据集的方式有问题?
更多信息
这是合并的数据
y<dbl> x<dbl> predy<dbl>
0.300 83.69 0.3292044030
0.312 83.69 0.3291121879
0.324 83.69 0.3291012056
0.330 83.69 0.3287549029
0.330 83.61 0.3291187262
0.335 83.57 0.3293862893
0.334 83.36 0.3303592465
0.329 82.79 0.3328754639
0.324 82.55 0.3339801283
0.323 82.92 0.3319657277
当我使用代码时:
ggplot(ASframe, aes(x=x, y=y))+
stat_summary(geom="ribbon", fun.data=mean_cl_normal, fun.args=list(conf.int=0.95), fill="lightblue")+
stat_summary(geom = "line", fun = mean, linetype = "dashed")+
stat_summary(geom = "point", fun=mean, color= "red", alpha = I(0.5)) +
ylim(-0.1, 0.6)
结果是:
解决方案
欢迎来到 SO。如果没有可重现的示例https://stackoverflow.com/help/minimal-reproducible-example,很难回答这个问题。我会尝试 geom_smooth 选项。这是一个使用 geom_smooth 绘制置信区间的可重现示例,希望能帮助您入门。
#plot for sepal length and petal length of setosa species
ggplot(subset(iris, iris$Species=="setosa"),aes(Sepal.Length,Petal.Length))+
geom_point(position="jitter")+
geom_smooth()
推荐阅读
- php - UPDATE SET Increment INNER JOIN,我的选择有效但不更新
- java - 缺少 JavaFX 运行时组件,即使我的 VM 选项和模块中已经有了它们
- python - Django 自动增加每个 ForeignKey 的 PositiveIntegerField
- python - Python 的验证问题
- javascript - 如何在 onclick 执行两个功能的自定义 JavaScript/Html 元素中创建一个按钮?
- php - PHP:使用键数组获取数组值或使用多个变量键引用数组值
- php - 调用未定义的方法 stdClass::isEmpty() 错误
- python - Python - 如何将两列中的值计算到每行中自己的列中?
- python - 冷却消息不适用于 discord.py
- android-jetpack-compose - mutableStateOf 值更改后不会触发 Recompose