我想在每条线的末尾加上每条生存曲线的标签。我使用的是来自ggsurvplot包的Survminer (基于ggplot2)。我不知道如何用ggrepel做这件事。我没有找到任何关于生存数据的例子:
require("survival")
library(survminer)
library(ggrepel)
fit<- survfit(Surv(time, status) ~ sex, data = lung)
p=ggsurvplot(fit, data = lung)$plot;
p + geom_label_repel()上面的代码会引发一个错误。
发布于 2022-06-13 20:15:41
您创建的对象p包含足够的信息来生成标签。p$data是一个数据框架,包含一个名为strata的列,您可以在这里使用它。您需要将label美学映射到本专栏。您还需要筛选数据的副本,以传递到只包含每个阶层的最大time值的time层:
p + geom_label_repel(aes(label = strata),
data = p$data %>%
group_by(strata) %>%
filter(time == max(time)))

https://stackoverflow.com/questions/72607941
复制相似问题