R 使用ggplot2绘制方框图的平均值和异常值点
我试图使用可用数据绘制下面方框图的异常值和平均点。数据集有3个不同的因子,3600行有1个值列 当我在代码下面运行时,它显示了平均点,但没有正确地绘制异常值R 使用ggplot2绘制方框图的平均值和异常值点,r,ggplot2,R,Ggplot2,我试图使用可用数据绘制下面方框图的异常值和平均点。数据集有3个不同的因子,3600行有1个值列 当我在代码下面运行时,它显示了平均点,但没有正确地绘制异常值 ggplot(df, aes(x=Representations, y=Values, fill=Methods)) + geom_boxplot() + facet_wrap(~Metrics) + stat_summary(fun.y=mean, colour="black", geom="point", positio
ggplot(df, aes(x=Representations, y=Values, fill=Methods)) +
geom_boxplot() +
facet_wrap(~Metrics) +
stat_summary(fun.y=mean, colour="black", geom="point", position=position_dodge(width=0.75)) +
geom_point() +
theme_bw()
再一次,当我修改代码时,如下图所示,平均点消失
ggplot(df, aes(x=Representations, y=Values, colour=Methods)) +
geom_boxplot() +
facet_wrap(~Metrics) +
stat_summary(fun.y=mean, colour="black", geom="point", position=position_dodge(width=0.75)) +
geom_point() +
theme_bw()
在这两种情况下,我得到的信息是:“ymax未定义:使用y来调整位置”3次
有什么建议可以解决吗?我想在单个方框图中绘制平均点,并以与图相同的颜色显示异常值
编辑:
原始数据集没有任何异常值,这就是我感到困惑的原因。多亏Flick先生用随机生成的数据回答了问题,使问题得到了正确的澄清。我没有下载数据,而是随机抽取了一个样本
set.seed(18)
gg <- expand.grid (
Methods=c("BC","FD","FDFND","NC"),
Metrics=c("DM","DTI","LB"),
Representations=c("CHG","QR","HQR")
)
df <- data.frame(
gg,
Values=rnorm(nrow(gg)*50)
)
这给了我
我使用的是ggplot2版本0.9.3.1非常感谢。我后来还发现,根据ggplot2计算异常值的方法,我的数据没有任何异常值,这就是造成混淆的原因!!!感谢你提供了一个很好的随机数据示例,它也帮了我很多忙:)
library(ggplot2)
ggplot(df, aes(x=Representations, y=Values, fill=Methods)) +
geom_boxplot() +
stat_summary(fun.y="mean", geom="point",
position=position_dodge(width=0.75), color="white") +
facet_wrap(~Metrics)