如何降低gridExtra的grid.arrange中的主标题?

时间:2014-01-16 09:49:51

标签: r margin title gridextra

我使用gridExtra的grid.arrange创建了一个图表,并尝试在将整个图表保存到.png文件之前为其添加主标题。

使用main="TITLE"参数有效,但无论我设置图表的高度如何,都会使用顶部边框刷新。

我的问题:如何设置它以使主标题不会被顶部边框刷新?一种方法是为整个图表添加一个整体边距,但同样,我可以不知道怎么做。

例如,我从grid arrange to place table and graph on one image修改了SandyMuspratt和Baptiste的代码:

library(ggplot2)
library(gridExtra)

x = read.table(text = "
               1/1/2010 10
               1/2/2010 20
               1/3/2010 15
               1/4/2010 56
               1/5/2010 46
               1/6/2010 15
               1/8/2010 15
               1/9/2010 15
               1/10/2010 20
               1/11/2010 15
               1/12/2010 15
               1/13/2010 40
               1/14/2010 15
               1/15/2010 15
               1/16/2010 70", sep = "", header = FALSE)

p1<-ggplot(x, aes(V2, V1)) + geom_point()
p2<-tableGrob(x)

png( filename = "TEST.png", width = 1700, height = 900, units = "px")
grid.arrange(p2, p1, main=textGrob("Total Data and Image", gp=gpar(cex=3)), 
             ncol = 2,widths=unit.c(grobWidth(p2), unit(1,"npc") - grobWidth(p2)))
dev.off()

PNG输出显示带边框的标题: PNG Output

我怀疑解决方案可能相当简单,但我似乎无法在线找到解决方案。我读过?grid.arrange,Adding text to a grid.table plot和其他帖子,但都没有提到这个。

任何帮助将不胜感激,并提前感谢!

1 个答案:

答案 0 :(得分:11)

?textGrob给出了一个提示:

main=textGrob("Total Data and Image", gp=gpar(cex=3), just="top")

修改(2015年7月16日):gridExtra&gt; = 2.0.0,main参数已重命名为top。有关详细信息,请参阅?arrangeGrob