如何在modelsummary的modelplot中修改误差线宽度(linewidth)?
如何调整modelsummary::modelplot中误差线的宽度?
你遇到的问题是因为modelplot的省略号参数并非直接传递给geom_pointrange,而是需要通过专门的pointrange_args参数来传递几何对象的参数。
解决方案
使用pointrange_args参数,将linewidth(旧版ggplot可用size)放在列表中传递给modelplot:
library(modelsummary) url <- 'https://vincentarelbundock.github.io/Rdatasets/csv/palmerpenguins/penguins.csv' dat <- read.csv(url) # 单位转换:毫米转厘米 dat$bill_length_cm <- dat$bill_length_mm / 10 dat$flipper_length_cm <- dat$flipper_length_mm / 10 mod <- lm(bill_length_cm ~ flipper_length_cm + species, data = dat) # 通过pointrange_args设置误差线宽度 modelplot(mod, pointrange_args = list(linewidth = 3))
补充说明
如果需要单独控制点的大小,可以搭配point_args参数:
modelplot(mod, pointrange_args = list(linewidth = 3), # 误差线宽度 point_args = list(size = 5)) # 点的大小
modelplot通过这类*_args参数区分不同几何对象的配置项,比如errorbar_args(误差棒样式)、point_args(点样式)等,直接传递linewidth会被函数解析为其他用途,因此无法生效。
内容的提问来源于stack exchange,提问作者robertspierre
相关产品推荐
相关产品推荐

