在 R 中使用 ggplot2
和 gridExtra
,我有一个要绘制和保存的 tableGrob
。
假设它是一个像这样的小表(你可以自己用内置数据集 iris
试试):
ggsave(plot=tableGrob(head(iris[,1:3])), filename="test.png")
太棒了,好用!但是...表格周围绘制了很多空白区域,因为 ggsave
默认为 w=7, h=7
(英寸),并且表格不会按比例放大覆盖那个空间。
我可以手动指定 w
和 h
,但我必须绘制许多 表,要找到所有正确的值需要大量工作.
如果我尝试绘制更大的表格:
ggsave(plot=tableGrob(iris), filename="test2.png")
那么,我怎样才能自动告诉绘图表根据绘图大小重新调整?或者我如何告诉 ggsave
将图像空间调整到合适的大小?
最佳答案
tg = gridExtra::tableGrob(iris[1:40,])
h = grid::convertHeight(sum(tg$heights), "in", TRUE)
w = grid::convertWidth(sum(tg$widths), "in", TRUE)
ggplot2::ggsave("test.pdf", tg, width=w, height=h)
注意:左边的小白边是由于行名是右对齐的,它可以被移除,例如通过调整填充。
关于r - 如何绘制和保存 tableGrob 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43003581/