В R Studio моя таблица рисков удаляется из моего графика выживания, когда я добавляю линию перехвата. Есть ли способ преодолеть эту проблему? - PullRequest
1 голос
/ 10 января 2020

В R Studio моя таблица рисков удаляется из моего графика выживания, когда я добавляю линию перехвата. Есть ли способ преодолеть эту проблему? Мой исходный код, который показывает таблицу рисков:

    library(readxl)
    library(ggplot2)
    library(survival)
    library(survminer)
    library(gmodels) 
    library(tidyverse)

    demo2<-read_excel('data.xlsx',sheet=1)

    #tte1=time to event 1
    tte1<-read_excel("data.xlsx", sheet=1)
    tte1$group<-factor(tte1$group,levels=c("C","I")) #turn group into a factor, and sets order of         
    levels

    #Kaplan-Meier plot for event
    fit1 <- survfit(Surv(Time, Event) ~ group,data = tte1)
    summary(fit1)
    p<-ggsurvplot(fit1, data = tte1, 
                  risk.table = TRUE, #adds risk table
                  risk.table.title = "Number at risk",
                  risk.table.subtitle = " ",
                  cumcensor.title= " ",
                  conf.int = TRUE,   #adds shading
                  surv.scale="percent",
                  censor= FALSE,
                  conf.int.style= 'ribbon',
                  legend.title= '',
                  legend.labs = c("Control", "Intervention"),
                  break.time.by=60,  #adds intervals
                  tables.theme = theme_cleantable(), # theme for tables
                  tables.y.text = FALSE,
                  xlim=c(0,290),
                  surv.plot.height= 0.75,
                  risk.table.height=0.1
    )
    p+xlab("Time (days)")

Но когда я изменяю последнюю строку этого кода, чтобы добавить строку перехвата, таблица рисков внезапно исчезает. Чтобы добавить строку ввода, я изменил последнюю строку кода с p+xlab("Time (days)") на

    p$plot+geom_vline(xintercept = 186, linetype="dashed",
                      color = "black", size=1.0, label= "median")+ 
      geom_text(aes(x=225, y=.20, label="Median follow-up time"), size=5, family="sans", 
    fontface="plain")

Кто-нибудь знает способ добавить строку перехвата без потери таблицы рисков?

Спасибо!

1 Ответ

1 голос
/ 11 января 2020

Ниже приведен воспроизводимый пример:

library(survminer)
require("survival")
fit3 <- survfit( Surv(time, status) ~ sex,
                     data = colon )

ggsurv <- ggsurvplot(fit3, data = colon,conf.int = FALSE,
       risk.table = TRUE, ggtheme = theme_bw())

ggsurv$plot+geom_vline(xintercept=1000)
# no risk table

Вы должны изменить элемент $plot в ggsurv,

ggsurv$plot = ggsurv$plot+geom_vline(xintercept=1000)
print(ggsurv)

enter image description here

...