You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在ggsurvplot生存曲线中添加X轴区间阴影矩形?

给ggsurvplot生存曲线添加X轴区间阴影的方法

ggsurvplot生成的图表基于ggplot2对象,直接用ggplot2的annotate()函数就能给指定X轴区间添加阴影矩形,具体实现步骤如下:

  1. 运行基础代码生成生存曲线对象
  2. 叠加annotate()函数添加阴影矩形

完整代码示例:

require("survival")
require("survminer") # ggsurvplot属于survminer包,需确保加载

fit <- survfit(Surv(time, status) ~ sex, data = lung)

# 生成基础生存曲线并保存为对象
p <- ggsurvplot(fit, data = lung)

# 添加X轴0-250区间的阴影
p$plot + 
  annotate("rect",
           xmin = 0, xmax = 250,
           ymin = 0, ymax = 1,
           fill = "gray", alpha = 0.3)

参数说明:

  • annotate("rect"):指定添加矩形注释类型
  • xmin/xmax:设置需要添加阴影的X轴区间(这里对应Time 0到250)
  • ymin/ymax:设置阴影的Y轴范围,生存曲线Y轴取值为0-1,直接覆盖整个区间即可
  • fill:设置阴影填充色,可替换为其他颜色(如"lightblue")
  • alpha:调整阴影透明度,数值越小越透明,避免遮挡曲线

如果需要添加多个阴影区间,重复调用annotate()即可,比如:

p$plot + 
  annotate("rect", xmin = 0, xmax = 250, ymin = 0, ymax = 1, fill = "gray", alpha = 0.3) +
  annotate("rect", xmin = 500, xmax = 750, ymin = 0, ymax = 1, fill = "lightblue", alpha = 0.3)

内容的提问来源于stack exchange,提问作者lucolotto

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 08:25:15