R ggplot2:如何在子组箱图中绘制2组的平均线?

问题描述 投票:1回答:1

我有13个站点被分为2组,我使用ggplot2为每个站点绘制了一个值的箱线图。它们基于填充颜色由组识别。如何在每个组的站点箱图中添加显示两组平均值的平均线? (即组1的方框中的一条平均线,组2中的一条线)

enter image description here

我尝试过使用“stat_summary()”,但只能用它来绘制各个网站的平均值,而不是整个组的平均值。 (单个平均线显示在图像中,而不是我想要的)

ggplot(data, aes(y = value, x=site, fill=group)) +
  geom_boxplot() + labs(y="value")+
  theme_classic() +
  theme(legend.position="bottom", 
        axis.title.x=element_blank(),
        axis.ticks.x=element_blank(), 
        text=element_text(size=15)) +
  scale_fill_manual(values=c("#E69F00", "#56B4E9"), name="group", 
                    labels=c("1", "2")) +
  stat_summary(fun.y = mean, geom = "errorbar", 
               aes(ymax = ..y.., ymin = ..y.., group =factor(mgmt)),
               width = 0.75, linetype = "dashed")

我希望每组有2条平均线,每条线一条,横跨每个组的站点框。相反,我得到每个站点框的平均线。

r ggplot2 boxplot
1个回答
0
投票

例如,geom_hline将在整个图表中获得水平线,而geom_segment可以制作更短的线(formerlatter)。

© www.soinside.com 2019 - 2024. All rights reserved.