[英]How to add mean to grouped bwplot Lattice R
我有一個分組的箱線圖,它為每個類別並排顯示兩個框(請參閱代碼)。 現在我有興趣分別添加每個類別和框的平均值。 我可以計算和可視化每個類別的平均值,但不以分組變量“年份”為條件。 我試圖單獨計算每年的平均值並單獨添加它們,但這不起作用。
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
如果可能,有人可以使用 Lattice 圖形展示如何執行此操作嗎? 因為我碩士論文中的所有情節都是以此為基礎的。
如果您想考慮最后一個選項,您可以嘗試使用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,aes(x = class, 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()
輸出:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.