首先,我要感谢巴蒂斯特爵士帮助我改进了我的 R 脚本,他使用 gtable/textGrob 在组合图的左下角添加了一个标题,如下所示:
library(grid)
library(gridExtra)
library(ggplot2)
p1 <- p2 <- ggplot()
g1 <- ggplotGrob(p1)
g2 <- ggplotGrob(p2)
g <- rbind(g1, g2)
caption <- textGrob("Figure 1. This is a caption", hjust=0, x=0)
g <- gtable::gtable_add_rows(g, unit(2,"mm") + grobHeight(caption), -1)
g <- gtable::gtable_add_grob(g, caption, nrow(g), l = 4, r = ncol(g))
grid.newpage()
grid.draw(g)
但是,我想再添加两件事:
(1) 在标题中插入一个学名,并用斜体书写。- 例如,根据上面提到的标题,我想只用斜体字“is”,其余的都是纯文本。
(2) 我还会在标题中添加符号,例如点形状=c(1,22);颜色=c(“黑色”,“红色”);填充=c(“红色”,“黑色”)。
我要怎么做这些?我是 R 程序的新手,因此非常感谢您的帮助。谢谢你。
更新:
我已经在@Docconcoct、@user20650 和@baptiste 的帮助下使用此脚本解决了查询 1:
library(grid)
library(gridExtra)
library(ggplot2)
g1 <- ggplotGrob(pl)
g2 <- ggplotGrob(pl1)
g <- rbind(g1, g2)
caption <- textGrob(expression(paste("Figure 1. This", italic(" is"), " a caption")), hjust=0, x=0)
g <- gtable::gtable_add_rows(g, unit(2,"mm") + grobHeight(caption), -1)
g <- gtable::gtable_add_grob(g, caption, nrow(g), l = 4, r = ncol(g))
grid.newpage()
grid.draw(g)
对于查询 2,正如 @baptiste 爵士所说,在我给他的原始电子邮件中,我已经有一个关于组合图的图例。但是,在图形标题中,我需要说明图例中的那些符号是什么意思,以及情节的其他一些细节。根据巴蒂斯特爵士给出的例子,我需要在标题中包含 supp 的含义以及 OJ(黑圈)和 VC(黑三角)的符号。
再次,非常感谢!