R metafor forest-plots: xlim 似乎被错误地忽略了



我在 R 包中使用forest.rma metafor .我想使用 xlim 参数来指定绘图的宽度。但是,当其中一个 x 值超出该范围时,这会被覆盖。下面是两个示例:

library(metafor)
par(mfrow=c(2,1))
rmaObject <- rma.uni(yi=c(1.3, -16), sei=c(0.8, 0.7)) 
forest(rmaObject, atransf=exp, xlim=c(-5,12), alim=c(-5,12))$xlim
forest(rmaObject, atransf=exp, xlim=c(-5,12))$xlim

在这两种情况下,我认为函数应该按照我的指示使用xlim=c(-5,12)并为第二个柱线绘制一个左箭头,以表明整个条形图位于图的左侧之外。但是正如控制台输出所示,第一个将xlim设置为c(-16,12),第二个将其设置为c(-20,12)

换句话说,forest强制xlim完全包含两个柱线,但我认为如果我指定xlim,尤其是如果我也指定alim,它不应该这样做。有没有简单的方法可以解决这个问题?

这个例子中的数字是真实的,尽管我省略了我的大部分研究(即yisei的值),这些研究大多在0或1的范围内。

您可以按照如下所述安装 metafor 的开发版本:

http://www.metafor-project.org/doku.php/installation#development_version

它更好地处理了这个问题。它仍然迫使xlim包含yi值,但不再是alim。底部的摘要多边形看起来仍然像废话(我没有内置任何代码来切断alim值处的多边形形状 - 并不像看起来那么微不足道),但是一旦您添加其余的研究,这可能不是问题。

最新更新