我想分組的boxplots是由stat_summary定義的。隨着changing-whisker-definition幫助下,我寫了下面的代碼:ggplot:當使用stat_summary時,如何更改boxplot設置
# 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()
其給出以下圖表:
有一些變化,我想執行:
- 我怎樣才能改變盒子的寬度?
- 如何填充邊框顏色相同的框?
我很樂意提供任何幫助。非常感謝。
查看[此問題](https://stackoverflow.com/q/17479793/832693)。雖然它是用於條形圖,但在ggplot的「aes」中使用「width」也適用於箱形圖。出於某種原因,谷歌總是首先將我帶到這個問題上,可能是因爲它是最近的。 – 2017-06-27 13:43:33