Fitted survival curves with Kaplan-Meier overlay

Model fit check for survival synthesis

NMA
ML-NMR
STC
MAIC
ML-UMR
Survival curves predicted by a parametric NMA or ML-NMR model, overlaid on each study’s observed Kaplan-Meier curves.

Fitted survival curves with Kaplan-Meier overlay example

Progression-free survival in five trials of maintenance therapy for newly diagnosed multiple myeloma: posterior survival curves from a fixed-effect Weibull NMA (lines and bands) with the observed or reconstructed Kaplan-Meier curves. Data: multinma::ndmm_ipd, ndmm_agd.
Family
Survival and time-to-event
Purpose
Check whether a parametric survival model fits the observed data in every study.
Inputs
A fitted survival model and the IPD or reconstructed pseudo-IPD.
Software
R multinma::geom_km() with plot(predict(type = "survival")), mlumr::geom_km(), flexsurv

What it shows

Synthesis of survival data, whether a Weibull or spline NMA, an ML-NMR with a general likelihood, a survival STC, or ML-UMR, rests on a parametric model for the baseline hazard and for how treatments change it. Overlaying each study’s fitted survival curves on its Kaplan-Meier curves is the most direct check that the model describes the data it was fitted to.

How to read it

  • Panels: studies.
  • Lines and bands: posterior mean fitted survival and credible intervals for each arm.
  • Step curves: Kaplan-Meier estimates from IPD or reconstructed pseudo-IPD.
  • Look for: systematic departures, such as fitted curves falling too fast early or too slowly late.

Interpretation

The Weibull model tracks the Kaplan-Meier curves closely in Attal 2012, McCarthy 2012, and Jackson 2019, with lenalidomide consistently above placebo. In Palumbo 2014 the placebo curve drops faster than the model predicts during the first two years. Misfit of that kind in individual studies suggests that a flexible baseline hazard (M-splines in multinma) is worth comparing before extrapolating.

Pitfalls

  • Good fit over the observed follow-up does not validate long-term extrapolation.
  • Reconstructed pseudo-IPD carries digitization error; check the reconstruction.
  • With many studies, compare fit statistics (DIC, LOOIC) across candidate models, not only the plots.

Code

library(multinma)

# Newly diagnosed multiple myeloma: progression-free survival for
# lenalidomide, thalidomide, and placebo maintenance (3 IPD trials and
# reconstructed pseudo-IPD from 2 published trials)
ndmm_net <- combine_network(
  set_ipd(ndmm_ipd, study = studyf, trt = trtf, Surv = Surv(eventtime / 12, status)),
  set_agd_surv(ndmm_agd, study = studyf, trt = trtf, Surv = Surv(eventtime / 12, status),
               covariates = ndmm_agd_covs),
  trt_ref = "Pbo"
)

# Fixed-effect NMA with a Weibull likelihood (proportional hazards)
fit <- nma(ndmm_net, likelihood = "weibull",
           prior_intercept = normal(scale = 100), prior_trt = normal(scale = 10),
           prior_aux = half_normal(scale = 10), seed = 2026)

# Fitted survival curves in each study, with the observed Kaplan-Meier curves
plot(predict(fit, type = "survival")) +
  geom_km(ndmm_net) +
  ggplot2::labs(x = "Years", y = "Progression-free survival")

References

  • Phillippo DM, Dias S, Ades AE, Welton NJ. Multilevel network meta-regression for general likelihoods: synthesis of individual and aggregate data with applications to survival analysis. J R Stat Soc Ser A. 2025. doi:10.1093/jrsssa/qnaf169
  • geom_km() reference. multinma documentation. dmphillippo.github.io/multinma
  • Latimer NR. NICE DSU Technical Support Document 14: Survival analysis for economic evaluations alongside clinical trials, extrapolation with patient-level data. 2011, updated 2013. sheffield.ac.uk/nice-dsu