0
目前我有下面的boxplot和stat_summary用於顯示每個分佈的分位數作爲文本。修改stat_summary只顯示幾個點
group = c(rep(c(1,2),100) )
r = rnorm(200,50,63)
d = data.frame( group = group, r = r )
head(d)
ggplot(data = d, aes(factor(group), r)) +
geom_boxplot() +
stat_summary(geom="text", fun.y= quantile,
aes(label=sprintf("%1.0f", ..y..)),
position=position_nudge(x=0.33), size=3)
可以看到位數經由fun.y= quantile
行代碼印刷爲文本。如何修改代碼以僅打印中值和最小值和最大值,以打印3點而不是全部5點?
我可以創建一個功能,並選擇位數我想
ff= function (x)
{
return(quantile(x)[1])
}
,並使用fun.y= quantile
它會打印出我想要什麼,但我怎麼在stat_summary呼叫直接納入fun.y?
謝謝。
只要把在'現在quantile'是函數:'fun.y =函數(x)的位數(X)[C(1,3, 5)]',或者更透明地說,'fun.y = function(x)quantile(x,c(0,.5,1))' – alistaire