我想为分组数据创建一个箱形图,以方框中的点的形式显示每个组的平均值。使用下面的代码,对于这两个组,我只会得到一个点。

df <- data.frame(a=factor(rbinom(100, 1, 0.45), label=c("m","w")),
    b=factor(rbinom(100, 1, 0.3), label=c("young","old")),
    c=rnorm(100))
ggplot(aes(y = c, x = b, fill = a), data = df) +
    geom_boxplot() +
    stat_summary(fun.y="mean", geom="point", shape=21, size=5, fill="white")

最佳答案

问题的一部分是更改点的填充,因为填充是确定应绘制两​​个不同颜色的箱形图的属性,所以该点的行为就像再次只有一组一样。我认为这应该给您您想要的。

ggplot(df, aes(x=b, y=c, fill=a)) +
  geom_boxplot() +
  stat_summary(fun.y="mean", geom="point", size=5,
    position=position_dodge(width=0.75), color="white")

关于r - ggplot2在箱形图中显示分组数据的单独平均值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23942959/

10-12 17:09