Ich möchte die Farben, die für die Anzeige von Gruppendiagrammen verwendet werden, mit ggsurv
steuern. Sie werden unter einem Spielzeug Beispiel finden zu reproduzieren, was ich gesehen habe (vor allem aus there genommen):So weisen Sie Gruppen in Überlebensdiagrammen Farben zu
require(data.table)
# Function to create synthetic survival data
simulWeib <- function(N, lambda, rho, beta, rateC)
{
# covariate --> N Bernoulli trials
x <- sample(x=c(0, 1), size=N, replace=TRUE, prob=c(0.5, 0.5))
# Weibull latent event times
v <- runif(n=N)
Tlat <- (- log(v)/(lambda * exp(x * beta)))^(1/rho)
# censoring times
C <- rexp(n=N, rate=rateC)
# follow-up times and event indicators
time <- pmin(Tlat, C)
status <- as.numeric(Tlat <= C)
# data set
data.frame(id=1:N,
time=time,
status=status,
x=x)
}
set.seed(1234)
nbGroups <- 7
dat <- list()
for(k in 1:nbGroups)
{
dat.onegp <- simulWeib(N=10, lambda=0.01, rho=1, beta=-0.6, rateC=0.001)
# fit <- coxph(Surv(time, status) ~ x, data=dat.onegp)
dat.onegp <- mutate(dat.onegp, Group = paste0("G",k))
dat[[k]] <- dat.onegp
}
dat.df <- rbindlist(dat)
dat.df.survCurv <- survfit(Surv(dat.df$time, dat.df$status) ~ dat.df$Group)
# Vector with colors to be used
cols = colorRampPalette(brewer.pal(9, "Set1"))(nbGroups)
ggsurv(dat.df.survCurv, size.est = 1) +
guides(linetype = FALSE) +
scale_colour_manual(name = "Exp. groups", breaks = sort(dat.df$Group), values = cols)
dies zweimal ausführen, werden zwei verschiedene Arten von Farbgruppenzuordnung geben, und ich will nicht Das. Ich brauche Gruppen, die immer mit der gleichen Farbe angezeigt werden, um die Konsistenz mit anderen Grafiken in einem Bericht zu gewährleisten.
NB: Ich habe festgestellt, dass die Reihenfolge, in der Farben angezeigt werden, mit den Überlebensdaten verknüpft ist, aber ich kann nicht herausfinden, wie Farbzuweisung erzwungen wird.
Irgendwelche Hilfe geschätzt!