我有两个地块,它们是从
plot_surv_at_t
包中的 constsurvplot
生成的。一个是观察 5 年无复发生存率与肿瘤大小的关系。另一个是癌症特异性存活率与肿瘤大小的关系。
model1 <- coxph(Surv(Time_To_Recurrence,Recurrence) ~ Tumor_Size, data = data, x=TRUE)
model2 <- coxph(Surv(CSS,Cancer_Death) ~ Tumor_Size, data = data, x=TRUE)
plot_surv_at_t(time = "Time_To_Recurrence",
status = "Recurrence",
variable = "Tumor_Size",
data = data1,
model = model1,
t=60)
plot_surv_at_t(time = "CSS",
status = "Cancer_Death",
variable = "Tumor_Size",
data = data1,
model = model2,
t=60)
每个单独的图看起来都很棒,但我想在同一图中显示大小对无复发和癌症特异性生存的影响。我已经尝试过
patchwork
包并且能够让它们彼此相邻,但我无法将它们放在一起。
谢谢
一个可能的选择是从第二个 ggplot2 对象中提取数据并将其添加到第一个 ggplot2 对象中,例如
library(survival)
library(survminer)
#> Loading required package: ggplot2
#> Loading required package: ggpubr
#>
#> Attaching package: 'survminer'
#> The following object is masked from 'package:survival':
#>
#> myeloma
#options(timeout = 6000)
#install.packages("contsurvplot", dependencies = TRUE)
library(contsurvplot)
fit <- coxph(Surv(time, status) ~ age, data = lung, x = TRUE)
plot1 <- plot_surv_at_t(time = "time",
status = "status",
variable = "age",
data = lung,
model = fit,
t=60)
plot1
lung2 <- lung %>%
mutate(CSS = sample(1:1000, 228))
fit2 <- coxph(Surv(CSS, status) ~ age, data = lung2, x = TRUE)
plot2 <- plot_surv_at_t(time = "CSS",
status = "status",
variable = "age",
data = lung2,
model = fit2,
t=60)
plot2
plot1 +
geom_line(data = plot2$data,
aes(x = cont, y = est),
color = "red")
创建于 2023-03-19 与 reprex v2.0.2