【发布时间】:2015-02-06 10:42:33
【问题描述】:
我想将由 stat_summary 定义的胡须分组箱线图。在changing-whisker-definition 的帮助下,我编写了以下代码:
# Data
xdf2 <- data.frame(month = rep(1:6,each=100)
, grp = rep(c('A','B'), 50*6)
)
xdf2$m <- rpois(n=nrow(xdf2),10)
# Definition of whiskers
f <- function(x) {
r <- quantile(x, probs = c(0.10, 0.25, 0.5, 0.75, 0.90))
names(r) <- c("ymin", "lower", "middle", "upper", "ymax")
r
}
# Add points outside of whiskers
o <- function(x) {
subset(x, x < quantile(x,probs=0.1) | quantile(x,probs=0.9) < x)
}
# Plot
ggplot(data = xdf2
, aes(factor(month),m, color=grp)
) +
stat_summary(fun.data = f
, geom="boxplot"
, position=position_dodge(width=1)
, size=1
) +
stat_summary(fun.y = o, geom="point", position=position_dodge(width=1)) +
scale_color_manual(values = c("gray30","darkgrey"),labels = c("AAA","BBB")) +
theme_bw()
它给出了以下图表:
我想进行一些更改:
- 如何更改框的宽度?
- 如何用相同颜色的边框填充框?
我很乐意提供任何帮助。非常感谢。
【问题讨论】:
-
查看this question。虽然它适用于条形图,但在 ggplot 的
aes中使用width也适用于箱线图。出于某种原因,Google 总是首先让我回答这个问题,可能是因为它是最近的。