如何将森林图存储在要在 R 中调用的对象中?
How to store forest plot in an object to be recalled in R?
关于如何在 R 中存储和调用森林图的一个小问题。我正在使用 R 中的元函数创建森林图。我可能需要存储图形并在以后在查看器中调用.我试过这个表达式:
forest.meta <- forest(meta, [...])
其中 [...] 是选项,但是当我键入“forest.meta”时,我在查看器中得到了一个“空”错误,而不是图表。
我哪里错了?
提前感谢您的帮助。
你得到 NULL
因为这就是函数 returns 的作用,就像基数 R 的 plot
所做的一样。它不像 ggplot
返回实际的绘图对象供您操作。
然而,并非一无所有。由于 forest
绘图使用网格图形,我们可以获取绘图的内容 window,将它们存储为图形对象的集合,稍后再次绘制它们:
library(meta)
data(Olkin1995)
m1 <- metabin(ev.exp, n.exp, ev.cont, n.cont,
data = Olkin1995, subset = c(41, 47, 51, 59),
sm = "RR", method = "I",
studlab = paste(author, year))
forest(m1)
# Now grab the plot
my_plot <- grid::grid.grab()
绘图现在存储为 my_plot
,所以假设我们想同时将绘图 window 用于其他用途
plot(1:10)
完成后,我们可以通过以下方式回忆起完全相同的情节:
grid::grid.newpage()
grid::grid.draw(my_plot)
关于如何在 R 中存储和调用森林图的一个小问题。我正在使用 R 中的元函数创建森林图。我可能需要存储图形并在以后在查看器中调用.我试过这个表达式:
forest.meta <- forest(meta, [...])
其中 [...] 是选项,但是当我键入“forest.meta”时,我在查看器中得到了一个“空”错误,而不是图表。
我哪里错了?
提前感谢您的帮助。
你得到 NULL
因为这就是函数 returns 的作用,就像基数 R 的 plot
所做的一样。它不像 ggplot
返回实际的绘图对象供您操作。
然而,并非一无所有。由于 forest
绘图使用网格图形,我们可以获取绘图的内容 window,将它们存储为图形对象的集合,稍后再次绘制它们:
library(meta)
data(Olkin1995)
m1 <- metabin(ev.exp, n.exp, ev.cont, n.cont,
data = Olkin1995, subset = c(41, 47, 51, 59),
sm = "RR", method = "I",
studlab = paste(author, year))
forest(m1)
# Now grab the plot
my_plot <- grid::grid.grab()
绘图现在存储为 my_plot
,所以假设我们想同时将绘图 window 用于其他用途
plot(1:10)
完成后,我们可以通过以下方式回忆起完全相同的情节:
grid::grid.newpage()
grid::grid.draw(my_plot)