我正在尝试显示两组数据.我正在使用该ggplot2包来绘制数据图并使用它stat_summary()来获得数据图中的点估计(平均值)和90%CI.我想要的是平均值和置信区间结构在表示数据分布的点的右侧.目前,stat_summary()只会将均值和CI强加于分布之上.
以下是我正在使用的数据示例:
set.seed(9909)
Subjects <- 1:100
values <- c(rnorm(n = 50, mean = 30, sd = 5), rnorm(n = 50, mean = 35, sd = 8))
data <- cbind(Subjects, values)
group1 <- rep("group1", 50)
group2 <- rep("group2", 50)
group <- c(group1, group2)
data <- data.frame(data, group)
data
Run Code Online (Sandbox Code Playgroud)
这就是我当前的ggplot2代码的样子(分布为平均点和90%CI叠加在每个组的顶部):
ggplot(data, aes(x = group, y = values, group = 1)) +
geom_point() +
stat_summary(fun.y = "mean", color = "red", size = 5, geom = "point") +
stat_summary(fun.data = "mean_cl_normal", color = "red", size = 2, geom = "errorbar", width = 0, fun.args = list(conf.int = 0.9)) + theme_bw()
Run Code Online (Sandbox Code Playgroud)
是否有可能将position_dodge的平均值和置信区间置于各自组的右侧?
你可以使用position_nudge:
ggplot(data, aes(x = group, y = values, group = 1)) +
geom_point() +
stat_summary(fun.y = "mean", color = "red", size = 5, geom = "point",
position=position_nudge(x = 0.1, y = 0)) +
stat_summary(fun.data = "mean_cl_normal", color = "red", size = 2,
geom = "errorbar", width = 0, fun.args = list(conf.int = 0.9),
position=position_nudge(x = 0.1, y = 0)) +
theme_bw()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1675 次 |
| 最近记录: |