r - 如何将森林图存储在要在 R 中调用的对象中?
问题描述
关于如何在 R 中存储和调用森林图的一个小问题。我正在使用 R 中的元函数创建森林图。我可能需要存储图形并稍后在查看器中调用。我试过这个表达式:
forest.meta <- forest(meta, [...])
其中 [...] 是选项,但是当我键入“forest.meta”时,我会在查看器中再次收到“null”错误而不是图表。
我哪里错了?
预先感谢您的任何帮助。
解决方案
你会得到NULL
,因为这就是函数返回的内容,就像 base R 所做的plot
一样。这不像ggplot
返回一个实际的绘图对象供您操作。
然而,一切都没有丢失。由于forest
使用网格图形进行绘图,我们可以获取绘图窗口的内容,将它们存储为图形对象的集合,稍后再次绘制它们:
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
,所以假设我们想同时使用绘图窗口做其他事情
plot(1:10)
完成后,我们可以通过执行以下操作来回忆完全相同的情节:
grid::grid.newpage()
grid::grid.draw(my_plot)
推荐阅读
- c# - Unity Animation 不播放,而是报错
- python-3.x - 在 Scrapy 中使用 ItemLoaders() 下载文件
- r - 数据框中的组合行(2行)总和没有重复
- game-engine - 适用于 NVidia PhysX 3.4 的本机 C API
- rust - 将二进制数的字符串转换为Rust中的实际数字的内置方法?
- visual-studio - 如何在 Visual Studio 中创建 ps1 PowerShell 文件?
- javascript - 等待 Ionic 中的订阅方法
- javascript - 为什么自定义函数会创建错误但console.log 没有点击事件?
- php - 雄辩的删除 - SQLSTATE [22007]:无效的日期时间格式:1292 截断不正确的 DOUBLE 值:
- ios - 如何本地化新创建的故事板?