如何通过ggarrange将ggtexttable与ggplot对象左对齐?
解决ggarrange中ggplot与ggtexttable左侧对齐的问题
我懂你遇到的困扰了——用ggpubr的ggarrange把绘图和表格垂直堆叠时,明明想让它们沿左侧对齐,设置align参数后却还是保持居中状态。其实问题出在align参数的正确取值上,咱们来调整代码:
修正后的完整代码
library(ggpubr) library(ggplot2) library(tidyverse) # 创建示例数据 df <- tibble(Col1 = 1:3, Col2 = rnorm(3)) # 生成ggplot绘图对象 plot <- df %>% ggplot(aes(x = Col1, y = Col2)) + geom_line() # 生成ggtexttable表格对象 table <- ggtexttable(df, rows = NULL) # 关键:添加align = "v"实现左侧对齐 ggarrange(plot, table, ncol = 1, nrow = 2, heights = c(1, 0.5), align = "v")
为什么之前的设置没生效?
在ggarrange中,参数的取值是和排列方向对应的:
- 当你**垂直排列(ncol=1)**时,想要实现左右方向的对齐,需要用
align = "v"(vertical align,指以垂直基准线对齐,对应水平位置的左/中/右对齐) - 如果是水平排列(nrow=1),想要实现上下方向的对齐,才会用
align = "h"
之前你可能用错了参数取值,或者没有明确指定align = "v",所以默认保持了居中对齐的状态。
内容的提问来源于stack exchange,提问作者Florian
相关产品推荐
相关产品推荐

