R 用geom_箱线图绘制分位数
我想得到尽可能多的关于我的发行版的信息。我使用以下代码创建了一个箱线图:R 用geom_箱线图绘制分位数,r,ggplot2,R,Ggplot2,我想得到尽可能多的关于我的发行版的信息。我使用以下代码创建了一个箱线图: ggplot(nkv.murgang, aes(x = factor(0), nkv.murgang$NK)) + geom_boxplot(notch = F, outlier.color = "darkgrey", outlier.shape = 1, color = "black", fill = "darkorange", varwidth = T) + gg
ggplot(nkv.murgang, aes(x = factor(0), nkv.murgang$NK)) +
geom_boxplot(notch = F, outlier.color = "darkgrey", outlier.shape = 1,
color = "black", fill = "darkorange", varwidth = T) +
ggtitle("NKV Murgang - Einfamilienhaus") +
labs(x = "Murgang", y = "Nutzen / Konsten \n Verhälhniss")
这将产生:
现在我想在图中画出相应的值。类似这样(在水平位置):
以下是我的(部分)数据:
我一直在尝试不同的事情,但我挣扎,因为我只知道我的x轴。有什么技巧可以克服这一点吗?这似乎可以满足您的需求:
df = data.frame(val = runif(10)) # create dummy data
ggplot(df) + geom_boxplot(aes(y=val,x=1)) + # create the boxplot at x=0
geom_text(data=data.frame(q=as.numeric(quantile(df$val))), aes(x=rep(1.5,5),y=q,label=format(q,digits=2))) + # add quantile values at x=0.5
geom_text(aes(x=0.5,y=median(df$val),label=format(quantile(df$val)[4]-quantile(df$val)[2],digits=2))) + # add interquartile value at x=0.5,y=median
geom_linerange(aes(x=0.55,ymin=quantile(df$val)[2],ymax = quantile(df$val)[4])) + # add linerange for interquartile
theme(axis.text.x=element_blank(), axis.ticks.x=element_blank()) + #remove x axis
labs(x = "Murgang", y = "Nutzen / Konsten \n Verhälhniss") # add label
请分享data@mtoto谢谢如果您使用
coord\u flip()
您的图片与代码的输出不相等,我已经添加了数据。@mtoto最初我有这个,后来我删除了它,对不起!(已修复)。。。不管图形是水平的还是垂直的,关键是绘制图形quantiles@mtoto事实上,这是一个(无意的)复制品。我通过你提供的链接找到了问题的答案。谢谢(复制品会发生什么?我应该删除答案吗?-我在社区中是个新手)