[英]R Violin plots and boxplots together, make fill behave differently only for boxplots
好的,所以我想把小提琴情節和白色的盒子圖一起繪制,但我的數據有點棘手。 我將data.frame中的數據與多個列融合,每個列的值都對應於兩個級別的因子,這里是我的數據的近似值:
library(ggplot2)
library(reshape2)
dat <- list(
A = rbind(
data.frame(group = "1",
vals = rnorm(500)),
data.frame(group = "2",
vals = rnorm(100))
),
B = rbind(
data.frame(group = "1",
vals = rnorm(500)),
data.frame(group = "2",
vals = rnorm(100))
),
C = rbind(
data.frame(group = "1",
vals = rnorm(500)),
data.frame(group = "2",
vals = rnorm(100))
)
)
dat.melt <- melt(dat)
我能找到的最好的是手動設置填充,但它會影響小提琴圖和箱形圖:
dodge <- position_dodge(width = 1)
p <- ggplot(dat.melt, aes(x = L1, y = value, fill = group))+
geom_violin(position = dodge)+
geom_boxplot(width = 0.3,
position = dodge,
outlier.shape = NA)+
scale_fill_manual(values=c("white", "white"))
我可以只制作白色的箱形圖而不是小提琴嗎?
PS我怎樣才能為小提琴制作傳說而不顯示箱形圖?
你也可以試試這個:
ggplot(dat.melt, aes(x = L1, y = value, fill=group))+
geom_violin(position = position_dodge(width = 1)) +
geom_boxplot(data = dat.melt,
aes(x = L1, y = value, col=group), fill="white",
position = position_dodge(width = 1), width=0.3,outlier.shape=NA)+
geom_boxplot(position = position_dodge(width = 1), alpha=0, width=0.3)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.