如何调整R中ggboxplot的绘图宽度,使箱形图间距更紧凑?
解决ggpubr箱形图箱子间距过大的问题
针对你想用ggpubr的ggboxplot让箱形图的箱子彼此更靠近的需求,给你几个实用的解决方向:
调整箱形图的避让宽度(核心方法)
ggboxplot底层基于ggplot2的geom_boxplot,默认用position_dodge()排列分组箱形图。你可以手动指定避让宽度,让箱子更紧凑。修改后的代码示例:ggboxplot( df_outcome.scaled, x="Schedule", y="Cort", notch = TRUE, width=0.2, position = position_dodge(width = 0.3) # 调整这个数值,越小箱子间距越近 )注意:
ggboxplot的width是单个箱子的宽度,position_dodge的width是分组间的避让间距,两个参数配合调整能达到理想的紧凑效果。缩小绘图的整体输出宽度
如果最终导出的图片整体太宽导致箱子显得分散,可以在保存时指定更小的宽度,同时搭配合适的高宽比:p <- ggboxplot( df_outcome.scaled, x="Schedule", y="Cort", notch = TRUE, width=0.2, position = position_dodge(width = 0.3) ) ggsave("boxplot.png", p, width = 6, height = 4) # 调整width数值缩小整体宽度压缩x轴两侧空白
通过scale_x_discrete的expand参数,减少x轴两端的空白区域,让箱子在绘图区域内更集中:ggboxplot( df_outcome.scaled, x="Schedule", y="Cort", notch = TRUE, width=0.2, position = position_dodge(width = 0.3) ) + scale_x_discrete(expand = c(0.05, 0)) # 第一个数值控制两侧空白,越小越紧凑
内容的提问来源于stack exchange,提问作者haidan
相关产品推荐
相关产品推荐

