在ggplot boxplot中的填充组中显示单独的平均值

时间:2016-03-19 08:56:59

标签: r plot ggplot2 boxplot

我有一个分组的箱图,使用3个类别的数据。一个类别设置为箱图的x轴,另一个设置为填充,最后一个设置为分面类别。我想显示每个填充组的均值,但是使用stat_summary只给出了x轴类别的均值,而没有分离填充的方法:

facetted boxplots

以下是当前代码:

demoplot<-ggplot(demo,aes(x=variable,y=value))
demoplot+geom_boxplot(aes(fill=category2),position=position_dodge(.9))+
stat_summary(fun.y=mean, colour="black", geom="point", shape=18, size=4,) +
facet_wrap(~category1)

有没有办法显示每个类别2的均值而无需手动计算和绘制点数?调整位置闪避并不是真的有用,因为它只是一个计算平均值。是否建议在mean()函数中创建条件?

For anyone interested, here's the data:

高级感谢对此的任何启示。

1 个答案:

答案 0 :(得分:11)

Ggplot需要在此处提供有关分组的明确信息。您可以在所需图层中使用<div id="one"><div id="two"></div></div>,或将aes(group=....)移至主要调用ggplot。如果没有对图层进行显式分组,ggplot将按x轴上的因子分组。这是一些带有虚假数据的示例代码:

fill=...

enter image description here