嗨,我对R来说是全新的。这是我第一次尝试。我正按照年龄制作生存情节。我无法弄清楚如何为每个年龄段指定颜色并将其放在图例中。有人可以帮忙吗?
require(survival) # not loaded by default although installed by default
group <- age
kmsurvival1 <- survfit(Surv(as.numeric(time),event) ~ group)
plot(kmsurvival1, xlab="Time",ylab="Survival Probability", mark.time = F)
答案 0 :(得分:7)
您只需指定一个颜色矢量,其长度与图中的线数(即组)相同。你可以这样做
N <- length(unique(group))
plot(kmsurvival1, xlab="Time",ylab="Survival Probability", mark.time = F,
col=1:N)
legend(
"topright",
legend=unique(group),
col=1:N,
horiz=FALSE,
bty='n')
或者您可以手动指定颜色col=c('black','blue','red')
(取决于您需要的颜色数量)。
来自?plot.survfit
中的示例,
library(survival)
leukemia.surv <- survfit(Surv(time, status) ~ x, data = aml)
plot(leukemia.surv, lty = 2:3,col=3:4)
lLab <- gsub("x=","",names(leukemia.surv$strata)) ## legend labels
legend(
"top",
legend=lLab,
col=3:4,
lty=2:3,
horiz=FALSE,
bty='n')