我在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
1}}。我有一个简单的方法可以解决这个问题吗?
这个例子中的数字是真实的,虽然我省略了我的大多数研究(即yi
和sei
的值),这些数据大多在0或1的范围内。
答案 0 :(得分:1)
您可以按照此处所述安装metafor
的开发版本:
http://www.metafor-project.org/doku.php/installation#development_version
它更好地处理这个问题。它仍然强制xlim
包含yi
值,但不再包含alim
。底部的摘要多边形仍然看起来像废话(我没有内置任何代码来切断alim
值的多边形形状 - 不像它看起来那么简单),但这可能不是一旦你添加了其余的研究,就会出现问题。