Я должен изменить порядок строк таблицы числа риска в объекте ggsurvplot для лучшей читаемости графика, но я не могу понять, как это сделать.
Я использую пример, предоставленный Кассамбарой здесь , с той разницей, что я использую risk.table.col = "strata". Код выглядит следующим образом:
require("survival")
require("survminer")
km.fit <- survfit(Surv(time, status) ~ sex, data = lung)
km.surv <- ggsurvplot(km.fit, risk.table = TRUE, risk.table.col = "strata")
res.cox <- coxph(Surv(time, status) ~ age + sex + ph.ecog, data = lung)
sex_df <- with(lung,
data.frame(sex = c(1, 2),
age = rep(mean(age, na.rm = TRUE), 2),
ph.ecog = c(1, 1)))
fit <- survfit(res.cox, newdata = sex_df)
cox.surv <- ggsurvplot(fit, data = sex_df, conf.int = TRUE)
cox.surv$table <- km.surv$table
print(cox.surv, risk.table.height = 0.3)
Это приводит к следующему графику: ![First Plot](https://i.stack.imgur.com/NtUZf.png)
Я хочу изменить порядок строк таблицы числа риска и таким образом получить график, подобный этому (график, нарисованный краской):
Ожидаемый участок
![enter image description here](https://i.stack.imgur.com/CaI2O.png)
Пока я пытался изменить значения в таблице количества рисков, посмотрев на объект ggsurvplot. Например, я использовал
cox.surv$table[["layers"]][[1]][["data"]][["strata"]] <- factor(cox.surv$table[["layers"]][[1]][["data"]][["strata"]], levels= rev(levels(cox.surv$table[["layers"]][[1]][["data"]][["strata"]])))
print(cox.surv, risk.table.height = 0.3)
и действительно, полученный график близок к тому, что я ищу, так как порядок строк изменился. Но почему-то изменился только цвет меток (пол = 1 и пол = 2), а цвет чисел остался прежним.
Заранее спасибо!