如何调整reReg包绘制的均值累积函数图的线条宽度?
调整reReg包均值累积函数图的线条宽度
reReg包的plot.mcf()函数返回的是ggplot2对象,因此可以通过ggplot2的图层操作来修改线条宽度,以下是两种可行方法:
方法1:直接修改现有线条图层的宽度
这种方法不会重复绘制线条,是更高效的方式:
library(reReg) library(ggplot2) data(readmission, package = "frailtypack") readmission <- subset(readmission, !(id %in% c(60, 109, 280))) mcf0 <- mcf(Recur(t.start %2% t.stop, id, event, death) ~ sex, data = readmission) p <- plot(mcf0, conf.int = TRUE) # 修改主线条的宽度(这里设置为1.5,可根据需求调整) p$layers[[1]]$aes_params$size <- 1.5 # 如果需要调整置信区间的线条宽度,可查看图层索引后修改 # 比如置信区间线条是第2个图层: # p$layers[[2]]$aes_params$size <- 0.8 p + theme_bw(base_size = 20)
方法2:添加新的geom_line覆盖原有线条
通过匹配原图层的映射关系,重新绘制更粗的线条:
library(reReg) library(ggplot2) data(readmission, package = "frailtypack") readmission <- subset(readmission, !(id %in% c(60, 109, 280))) mcf0 <- mcf(Recur(t.start %2% t.stop, id, event, death) ~ sex, data = readmission) p <- plot(mcf0, conf.int = TRUE) # 添加新线条,设置宽度为1.5,需匹配原有的分组和颜色映射 p <- p + geom_line(aes(group = sex, color = sex), size = 1.5) p + theme_bw(base_size = 20)
说明
- 可以通过
str(p)查看ggplot对象的图层结构,确认主线条和置信区间对应的图层索引。 size参数的数值越大,线条越粗,可根据可视化需求调整。
内容的提问来源于stack exchange,提问作者Timo Kvamme
相关产品推荐
相关产品推荐

