如何在ggplot2中让冲积图的柱形底部与X轴对齐
解决冲积图柱形底部与X轴间距问题
问题的核心是Y轴的默认扩展设置导致柱形底部和X轴之间存在空隙,而非X轴的设置。你需要调整Y轴的扩展参数,让Y轴从0开始且无额外间距。
修改方案
在你的ggplot代码中添加scale_y_continuous(expand = c(0, 0)),即可让柱形底部完全对齐X轴。修改后的完整代码如下:
topclones %>% ggplot(aes(x = Group, y = n, alluvium = v_gene, stratum = v_gene, fill = v_gene)) + geom_flow() + geom_stratum() + geom_text(stat = "stratum", aes(label = after_stat(stratum))) + scale_fill_manual(values = allucols) + scale_y_continuous(expand = c(0, 0)) + # 关键修改:移除Y轴底部扩展空间 ylab("Counts") + xlab(NULL) + theme_classic() + theme(axis.text.x = element_text(size = 11), axis.text.y = element_text(size = 11), axis.title.x = element_text(size = 13), axis.title.y = element_text(size = 13), legend.position = "none")
补充说明
expand = c(0, 0)会移除Y轴两端的默认扩展空间,确保柱形底部与X轴(Y=0刻度)完全贴合。- 如果担心顶部柱形或文本溢出,可以搭配
coord_cartesian(ylim = c(0, max(topclones$n) * 1.05))使用,既保证底部对齐,又给顶部预留少量空间。
内容的提问来源于stack exchange,提问作者Zoya Qaiyum
相关产品推荐
相关产品推荐

