更改箱线图中间线的厚度:geom_boxplot()

14

我想对 geom_boxplot() 进行一些修改。因为有时候我的箱线图非常“小”(请参见此处的黄色和绿色类群),所以我想更加突出中位数。那么,是否可以调整中位数线的粗细?

1个回答

34

这个解决方案在文档中并不明显,但幸运的是我们并不需要编辑 ggplot2 的源代码。在查看 ggplot2 的源代码后,我发现中位数线的厚度由 fatten 参数控制。默认情况下,fatten 的值为二:

require(reshape)
require(ggplot2)
cars_melt = melt(cars)

ggplot(aes(x = variable, y = value), data = cars_melt) + 
  geom_boxplot(fatten = 2) 

在此输入图片描述

但是,如果我们将值增加到例如4,则中位数线变得更粗。

ggplot(aes(x = variable, y = value), data = cars_melt) + 
  geom_boxplot(fatten = 4) 

在这里输入图片描述


中位线的宽度与lwd有什么关系?它是lwd指定的任何值的乘数,还是它具有自己的度量单位? - Canned Man
如果不明显的话,将“fatten”更改为小于2的值将使其变得更薄 - 当您的条形图非常小且中位数线占据大部分条形时,这非常有帮助。 - Lauren Fitch

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接