forestplot() 中绘图区域的宽度是否有参数

Is there an argument for the width of the plotting area in forestplot()

forestplot()中是否有调整绘图区域宽高比的参数?我想将 x 轴设置为 y 轴高度的 2/3。

谢谢!

# Package
library(forestplot)

# Data 
test_data <- data.frame(coef=c(1.59, 1.24),
                        low=c(1.4, 0.78),
                        high=c(1.8, 1.55),
                        varname=c("aa","bb"),
                        varexplan=c("A very long description A very long description","A very long description A very long description"))

test_data$varexplan <- as.character(test_data$varexplan)
test_data$varname <- as.character(test_data$varname)

# Prepare text 
tabletext <- cbind(c(test_data$varname), 
                   c(test_data$explan))
# Plot
forestplot(tabletext,
           test_data$coef,
           test_data$low,
           test_data$high)

您可以在导出绘图时设置所需的比例,例如png()。该图将保存到您的工作目录中。

h <- 1080

png(height = h, width=2/3*h, res=300)
forestplot(tabletext,
           test_data$coef,
           test_data$low,
           test_data$high)
dev.off()

屈服

万一它对某人有帮助:包 forestplot 确实提供了一个选项来设置图形宽度,恰当地命名为 graphwidth,它需要一个 unit 参数:例如,

forestplot(tabletext,
       test_data$coef,
       test_data$low,
       test_data$high,
       graphwidth = unit(5, "cm"))

如果您想让绘图区域比例独立于导出函数,这可能是一个稍微更优雅的选项。