在 r 中为 forestplot 翻转 x 轴
Flip x axis in r for forestplot
我使用 metafor 包在 r 中制作了一个前景图,代码如下:
res <- metafor::rma(cohens_d, variance, data = my_data)
par(mar=c(3.4,0,0,0))
par(cex=2.5, font=4)
metafor::forest.rma(res, alim=c(-3.75, 3.75), xlab = "Cohen's D with 95% CI",
slab = my_data$Paper)
这给了我图像:
我想翻转 x 轴,意思是负数在右边。关于如何做到这一点的任何想法?
谢谢!
我只是简单地翻转模型的估计系数(b 组件 rma class)之前绘图:
res <- metafor::rma(cohens_d, variance, data = my_data)
res$b <- -res$b
好吧,这真是一个荒谬的技巧,但它确实有效。基本上,您必须绘制两次绘图,一次添加点(带反转符号),一次添加注释(不带反转符号)。
library(metafor)
dat <- get(data(dat.bcg))
dat <- escalc(measure="RR", ai=tpos, bi=tneg, ci=cpos, di=cneg, data=dat.bcg)
res <- rma(yi, vi, data=dat)
### default plot
forest(res, xlim=c(-8,8))
### trick into reverse x-axis
forest(res, xaxt="n", transf=function(x) -1*x, annotate=FALSE, xlim=c(-8,8), xlab="Log Relative Risk")
axis(side=1, at=seq(-3, 3, 1), labels=seq(3,-3,-1))
par(new=TRUE)
forest(res, xaxt="n", xlim=c(-8,8), col="white", border="white", pch=NA, lty="blank", efac=NA, xlab="", slab=NA, mlab=NA)
par(new=FALSE)
我使用 metafor 包在 r 中制作了一个前景图,代码如下:
res <- metafor::rma(cohens_d, variance, data = my_data)
par(mar=c(3.4,0,0,0))
par(cex=2.5, font=4)
metafor::forest.rma(res, alim=c(-3.75, 3.75), xlab = "Cohen's D with 95% CI",
slab = my_data$Paper)
这给了我图像:
我想翻转 x 轴,意思是负数在右边。关于如何做到这一点的任何想法?
谢谢!
我只是简单地翻转模型的估计系数(b 组件 rma class)之前绘图:
res <- metafor::rma(cohens_d, variance, data = my_data)
res$b <- -res$b
好吧,这真是一个荒谬的技巧,但它确实有效。基本上,您必须绘制两次绘图,一次添加点(带反转符号),一次添加注释(不带反转符号)。
library(metafor)
dat <- get(data(dat.bcg))
dat <- escalc(measure="RR", ai=tpos, bi=tneg, ci=cpos, di=cneg, data=dat.bcg)
res <- rma(yi, vi, data=dat)
### default plot
forest(res, xlim=c(-8,8))
### trick into reverse x-axis
forest(res, xaxt="n", transf=function(x) -1*x, annotate=FALSE, xlim=c(-8,8), xlab="Log Relative Risk")
axis(side=1, at=seq(-3, 3, 1), labels=seq(3,-3,-1))
par(new=TRUE)
forest(res, xaxt="n", xlim=c(-8,8), col="white", border="white", pch=NA, lty="blank", efac=NA, xlab="", slab=NA, mlab=NA)
par(new=FALSE)