gpt4 book ai didi

r - 在ggplot中绘制置信区间

转载 作者:行者123 更新时间:2023-12-03 22:49:01 24 4
gpt4 key购买 nike

我想使用 ggplot 绘制以下图:

GgPlot of Confidence Intervals by Group

这是我的 df 结构的一个例子(有点,不按数据比例绘制):

example.df = data.frame(mean = c(0.3,0.8,0.4,0.65,0.28,0.91,0.35,0.61,0.32,0.94,0.1,0.9,0.13,0.85,0.7,1.3), 
std.dev = c(0.01,0.03,0.023,0.031,0.01,0.012,0.015,0.021,0.21,0.13,0.023,0.051,0.07,0.012,0.025,0.058),
class = c("1","2","1","2","1","2","1","2","1","2","1","2","1","2","1","2"),
group = c("group1","group2","group1","group2","group1","group2","group1","group2","group1","group2","group1","group2","group1","group2","group1","group2"))

该数据框由 16 个重复组成,每个重复具有给定的平均值和给定的标准偏差。

对于每个重复,我想绘制置信区间,图中示例中的大点是平均估计值,条形的长度是标准偏差的两倍。

另外,我想在同一行中绘制两个不同的副本,但颜色不同,按类别着色,红色是 1 类,蓝色是 2 类。

最后,我想将整个情节划分为对应于两个不同组的两个面板(在同一行中)。

我试着查看这个网站, http://www.cookbook-r.com/Graphs/Plotting_means_and_error_bars_(ggplot2)/但无法弄清楚如何针对此结构的任何数据框自动执行此操作,组数为 X(在本例中为 2),每组重复 K 个(在本例中为 8、1 类 4 和 2 类 4 )。

有没有使用 ggplot 或标准 r pkg 库来做到这一点的好方法?

最佳答案

我想您提供的示例数据框没有以适当的方式构建,因为 group1 中的所有值有 class 1 ,并在 group2都是类(class)2 .所以我制作了新的数据框,还添加了名为 replicate 的新列显示每个 class 中的重复次数(四个重复(有两个 group 值))。

example.df = data.frame(mean = c(0.3,0.8,0.4,0.65,0.28,0.91,0.35,0.61,0.32,0.94,0.1,
0.9,0.13,0.85,0.7,1.3),
std.dev = c(0.01,0.03,0.023,0.031,0.01,0.012,0.015,0.021,0.21,
0.13,0.023,0.051,0.07,0.012,0.025,0.058),
class = c("1","2","1","2","1","2","1","2","1","2","1",
"2","1","2","1","2"),
group = rep(c("group1","group2"),each=8),
replicate=rep(rep(1:4,each=2),time=2))

现在您可以使用 geom_pointrange()以置信区间和 facet_wrap() 获得点数为每组绘图。
ggplot(example.df,aes(factor(replicate),
y=mean,ymin=mean-2*std.dev,ymax=mean+2*std.dev,color=factor(class)))+
geom_pointrange()+facet_wrap(~group)

enter image description here

关于r - 在ggplot中绘制置信区间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19599957/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com