Rainforest plot

Likelihood drop forest plot

MA
A forest plot variant in which each confidence interval is drawn as a likelihood-shaped drop, so that precision and plausibility are visible.
MAProposed

Rainforest plot example

Rainforest plot of the BCG trials. Each drop traces the relative likelihood of the true effect across the 95% confidence interval; darker, taller drops belong to more precise studies. Data: metadat::dat.bcg.
Family
Effect display
Purpose
Replace the flat confidence interval line with a shape that shows which values are most plausible.
Inputs
Study estimates with standard errors.
Software
R metaviz::viz_rainforest()

What it shows

In a conventional forest plot every value inside the 95% confidence interval looks equally plausible, and the eye is drawn to the longest lines, which belong to the least informative studies. The rainforest plot, proposed by Schild and Voracek, redraws each interval as a “raindrop” whose height follows the likelihood of the effect. Shading intensity is also tied to weight, so precise studies stand out and imprecise ones fade.

How to read it

  • Rows: studies, with a summary drop or diamond at the bottom.
  • Drop width: the 95% confidence interval.
  • Drop height and shape: the relative likelihood (a normal curve on the analysis scale), largest at the point estimate.
  • Color intensity: proportional to the study’s weight.
  • Tick inside the drop: the point estimate.

Interpretation

The large trials (Stein and Aronson, TPT Madras, Comstock 1974, Hart and Sutherland) appear as short, dark, concentrated drops, while small trials such as Comstock and Webster fade into long, pale streaks. The eye is now drawn to the studies that actually carry the evidence, which is the main design goal.

Pitfalls

  • The likelihood shape assumes approximate normality on the analysis scale, as in any standard forest plot.
  • Drops shrink visually for imprecise studies, which is the intention, but it can make outlying imprecise studies easy to overlook.
  • It is less familiar to clinical readers than a standard forest plot; include a legend.

Code

library(metafor)
library(metaviz)

data(dat.bcg, package = "metadat")
dat <- escalc(measure = "RR", ai = tpos, bi = tneg, ci = cpos, di = cneg,
              data = dat.bcg)

# Each "raindrop" traces the likelihood of the study effect across its CI
viz_rainforest(
  x = dat[, c("yi", "vi")] |> transform(vi = sqrt(vi)),
  study_labels = paste(dat$author, dat$year),
  summary_label = "Summary (random effects)",
  method = "REML",
  xlab = "Risk ratio (log scale)",
  col = "Blues",
  text_size = 3.2
) +
  ggplot2::scale_x_continuous(name = "Risk ratio (log scale)", breaks = log(c(0.1, 0.25, 0.5, 1, 2, 4)),
                              labels = c(0.1, 0.25, 0.5, 1, 2, 4))

References

  • Schild AHE, Voracek M. Finding your way out of the forest without a trail of bread crumbs: development and evaluation of two novel displays of forest plots. Res Synth Methods. 2015;6:74-86. doi:10.1002/jrsm.1125
  • Kossmeier M, Tran US, Voracek M. Charting the landscape of graphical displays for meta-analysis and systematic reviews: a comprehensive review, taxonomy, and feature analysis. BMC Med Res Methodol. 2020;20:26. doi:10.1186/s12874-020-0911-9