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

如何在R语言中绘制两个数据集的生存曲线于同一图中

嘿,作为刚接触R语言生存分析的新手,能独立画出单条生存曲线已经超棒啦!要把两条曲线放在同一图里对比其实很简单,我给你两种实用方法,你可以按需选择~

方法一:基础R绘图(无需额外安装包)

首先先确保你正确拟合了两个数据集的生存模型(帮你修正了代码里没写完的部分):

# 拟合ConKRAS数据集的生存曲线
km_fit_con <- survfit(Surv(SurvivalTime, Status) ~ 1, data = ConKRAS)
# 拟合DisKRAS数据集的生存曲线
km_fit_dis <- survfit(Surv(SurvivalTime, Status) ~ 1, data = DisKRAS)

注意:如果DisKRAS里的生存时间/结局变量名和ConKRAS不一样,记得把SurvivalTime和Status换成对应变量名哦!

接下来先画第一条曲线,再用add=TRUE参数把第二条曲线叠加上去,最后加个图例区分组别:

# 绘制第一条曲线,设置标题和坐标轴标签
plot(km_fit_con, 
     main = "ConKRAS vs DisKRAS 生存曲线对比", 
     xlab = "生存时间", 
     ylab = "生存率", 
     col = "darkblue")
# 叠加第二条曲线,用不同颜色区分
plot(km_fit_dis, 
     add = TRUE, 
     col = "darkred")
# 添加图例,放在右上角
legend("topright", 
       legend = c("ConKRAS组", "DisKRAS组"), 
       col = c("darkblue", "darkred"), 
       lty = 1) # lty=1代表实线,和生存曲线的线型一致

方法二:用survminer包绘制更美观的专业曲线

如果想要更精致、适合论文的生存曲线,推荐用survminer包,它能自动生成图例、还能轻松添加log-rank检验的p值:
首先先安装并加载包:

install.packages("survminer")
library(survminer)

步骤1:合并两个数据集(更方便拟合分组模型)

把两个数据集合并,同时添加一个分组变量标记来源:

combined_data <- rbind(
  # 给ConKRAS加分组标签
  transform(ConKRAS, group = "ConKRAS"),
  # 给DisKRAS加分组标签
  transform(DisKRAS, group = "DisKRAS")
)

步骤2:拟合分组生存模型并绘图

# 拟合合并后的分组生存模型
km_fit_combined <- survfit(Surv(SurvivalTime, Status) ~ group, data = combined_data)

# 绘制对比曲线,可自定义样式
ggsurvplot(km_fit_combined,
           main = "ConKRAS vs DisKRAS 生存曲线对比",
           xlab = "生存时间",
           ylab = "生存率",
           palette = c("darkblue", "darkred"), # 设置曲线颜色
           legend = "topright", # 图例位置
           legend.title = "组别", # 图例标题
           legend.labs = c("ConKRAS", "DisKRAS"), # 图例标签
           pval = TRUE, # 可选:添加log-rank检验的p值
           risk.table = TRUE # 可选:添加风险人数表格
)

小提醒

  • 确认你的Status变量格式正确:一般0代表删失(未发生事件),1代表事件发生(比如死亡、复发),如果你的编码反过来也没关系,survfit会自动识别,但最好提前确认哦~
  • 如果两个数据集的变量名不一致,一定要在Surv()函数里替换成对应数据集的变量名!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 08:11:56