#Sample data
set.seed(42)
DB = data.frame(Group =c(rep("1",16),
rep("2",4)) ,
Score1 = sample(1:20,20, replace = T),
Score2 = sample(1:20,20, replace = T),
Score3 = sample(1:20,20, replace = T),
Score4 = sample(1:20,20, replace = T))
我想繪制兩個條形圖,比較兩組中每個分數的平均值。所以右側將帶有標題“第 1 組平均分數”,左側(左側條形圖)是“第 2 組平均分數”謝謝。
uj5u.com熱心網友回復:
您可以轉為長格式并使用stat = "summary"
library(tidyverse)
DB %>%
pivot_longer(-1, names_to = "Score") %>%
ggplot(aes(Group, value, fill = Score))
geom_bar(position = position_dodge(width = 0.8, preserve = "total"),
stat = "summary", fun = mean, width = 0.6)
scale_fill_brewer(palette = "Set2")
theme_minimal(base_size = 20)

或者,如果您更喜歡切面,您可以執行以下操作:
library(tidyverse)
DB %>%
pivot_longer(-1, names_to = "Score") %>%
mutate(Group = paste("Group", Group)) %>%
ggplot(aes(Score, value, fill = Score))
geom_bar(stat = "summary", fun = mean, width = 0.6)
scale_fill_brewer(palette = "Set2", guide = "none")
facet_grid(.~Group)
theme_bw(base_size = 20)
使用reprex v2.0.2創建于 2022-11-13
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/532430.html
標籤:rggplot2
上一篇:將字串末尾的文本移到開頭
