如何解决如何为分组的bwplot Lattice R添加均值
我有一个分组的箱线图,它为每个类别并排显示两个箱(参见代码)。现在,我有兴趣分别为每个类别和框添加均值。我可以计算和可视化每个类别的平均值,但不以分组变量“ year”为条件。我尝试分别计算每年的平均值并将其分别添加,但这没有用。
data(mpg,package = "ggplot2")
library(latticeExtra)
tmp <- tapply(mpg$hwy,mpg$class,FUN =mean)
bwplot(class~hwy,data = mpg,groups = year,box.width = 1/3,panel = panel.superpose,panel.groups = function(x,y,...,group.number) {
panel.bwplot(x,y + (group.number-1.5)/3,...)
panel.points(tmp,seq(tmp),...)
}
)
会产生以下情节:
该示例基于:Grouped horizontal boxplot with bwplot
如果可以的话,有人可以显示如何使用莱迪思的图形吗?因为我硕士论文中的所有情节都是基于它的。
解决方法
如果您要考虑使用最后一个选项,可以尝试使用ggplot2
。红点所属的代码在这里表示:
library(ggplot2)
library(dplyr)
#Data
data(mpg,package = "ggplot2")
#Compute summary for points
Avg <- mpg %>% group_by(class,year) %>%
summarise(Avg=mean(hwy))
#Plot
ggplot(data = mpg,aes(x = class,y = hwy,fill = factor(year))) +
geom_boxplot(alpha=.25) +
geom_point(data=Avg,y = Avg,color=factor(year)),position=position_dodge(width=0.9),show.legend = F)+
scale_color_manual(values = c('red','red'))+
coord_flip()+
labs(fill='Year')+
theme_bw()
输出:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。