1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > R语言 将多条生存曲线画到一起(不是拼图) 一张图绘制多条生存曲线

R语言 将多条生存曲线画到一起(不是拼图) 一张图绘制多条生存曲线

时间:2020-06-03 20:33:10

相关推荐

R语言 将多条生存曲线画到一起(不是拼图)   一张图绘制多条生存曲线

网上找破了头都没找到这个办法,只找到一堆拼图的办法

其实方法很简单,survival包自带这个函数:ggsurvplot_combine()

library(survival)library(survminer)#首先新建一个列表,包含你想要拼合的生存对象,记住一定要命名fit1、fit2等,如下所示fitlist<-list(fit1 = survfit(Surv(survivaltime,outcome)~variable1, data = yourdata),fit2 = survfit(Surv(survivaltime,outcome)~variable2, data = yourdata))#然后用ggsurvplot_combine()函数就能把以上list中的生存曲线画到一张图里了ggsurvplot_combine(fitlist,data = sfdata_pre19)

来看一下实际应用效果:先生成两张单独的生存曲线

library(tidyverse)library(survival)library(survminer)data(lung) # 加载lung数据集View(lung) # 查看数据集# 总体生存曲线fit1 <- survfit(Surv(time,status) ~ 1, data= lung)ggsurvplot(fit1, data = lung)# 性别分组的生存曲线fit2 <- survfit(Surv(time,status) ~ sex, data= lung)ggsurvplot(fit2, data = lung)

看一下拼合之后的效果

# 将两个生存对象放入一个list中fitlist <- list(fit1, fit2)# 用ggsurvplot_combine画到一张图中ggsurvplot_combine(fitlist, data = lung)

增加一些修饰让图片更美观(这部分和ggsurvplot是一样的):

# 增加一些修饰条件使图片美观ggsurvplot_combine(fitlist, data = lung,legend = c(0.75,0.75), # 图例位置legend.title = "", # 图例标题legend.labs = c("总体","男性","女性"), # 图例标签,注意顺序不要标错axes.offset = FALSE, #坐标轴刻度从原点开始xlab="生存时间 (月)",ylab="累积生存率 (%)")

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。