Is it possible to produce a log-minus-log plot using ggsurvfit::ggsurvfit()?
Here's an example of what I want to produce:
library(ggsurvfit)
temp <- survfit2(Surv(time, status) ~ adhere, data = df_colon)
plot(temp, fun = \(x) log(-log(x)))
but instead of using plot() I want to use ggsurvfit::ggsurvfit(). I tried the following
temp$surv <- log(-log(temp$surv))
ggsurvfit(temp)
but it behaves weirdly in the beginning of the plot because the survival curve is 1 at time 0.
The issue is that
ggsurvfit()assumes thaty=1at time zero. This makes sense for a survival curve - you can't model the survival of people who are already dead - but not if you transform the y-axis.To resolve this, as
ggsurvit()produces aggplotobject, you can just set the axis limits to only include values which are actually there, removing the row containing this assumption. I would change the y-axis label as well.