Visualization VocabularyDataviz vocabulary
Diagram: funnel plot
Drawing: Adrien Taudière (CC0)
ggplot2 example: funnel plot
Adrien Taudière (CC0); R code ↓; data: Colditz et al. 1994, via metadat (Viechtbauer et al. 2026) (GPL)
Wikidata image: funnel plot
Nousernamesleft (Public domain); Wikimedia Commons; item Q967190

chart

funnel plot

Effect against precision used to detect publication bias.

graphique en entonnoir de précision

Effet en fonction de la précision pour détecter un biais de publication.

À ne pas confondre avec le graphique en entonnoir marketing. Wikipédia FR l'appelle simplement « graphique en entonnoir », forme que ce dictionnaire réserve au graphique marketing.

Classification

  • chart
  • points and bubbles › scatterplots
  • deviation
  • the name evokes: object

Channels

Attestation and synonyms

Scientific literature

OpenAlex: 17 070 papers since 1972, 57% in the last five years; mostly in Medicine, Biochemistry, Genetics and Molecular Biology, Psychology; Wikidata

Seminal references

R packages

R code of the ggplot2 example

library(ggplot2)
library(metafor)

## Log risk ratio of tuberculosis, vaccinated against unvaccinated, in 13
## trials of the BCG vaccine, and the random-effects mean. The funnel is the
## 95% range a trial of each precision would fall in if all shared that mean.
trials <- escalc(measure = "RR", ai = tpos, bi = tneg, ci = cpos, di = cneg, data = dat.bcg)
pooled <- rma(yi, vi, data = trials)
trials$se <- sqrt(trials$vi)
edges <- data.frame(se = c(max(trials$se) * 1.1, 0, max(trials$se) * 1.1),
                    x = coef(pooled) + qnorm(0.975) * max(trials$se) * 1.1 * c(-1, 0, 1))

p <- ggplot(trials, aes(x = yi, y = se)) +
  geom_polygon(data = edges, aes(x = x, y = se), fill = "#2e7891", alpha = 0.12) +
  geom_vline(xintercept = coef(pooled), colour = "#535353", linewidth = 0.4) +
  geom_vline(xintercept = 0, colour = "#535353", linewidth = 0.4, linetype = "dashed") +
  geom_point(size = 2, colour = "#9b2367") +
  annotate("text", x = coef(pooled) - 0.05, y = 0.02, label = "Pooled", hjust = 1, size = 3,
           colour = "#535353") +
  annotate("text", x = 0.05, y = 0.02, label = "No effect", hjust = 0, size = 3, colour = "#535353") +
  scale_y_reverse(labels = lex_number, expand = expansion(mult = c(0.02, 0.02))) +
  scale_x_continuous(labels = lex_number) +
  labs(title = "Seven of the 13 trials differ from the pooled effect\nby more than chance alone would allow",
       subtitle = "BCG vaccine against tuberculosis: log risk ratio against its standard error",
       x = "Log risk ratio", y = "Standard error",
       caption = "Data: Colditz et al. 1994, via the metadat R package") +
  theme_lex_viz(grid = "", arrows = "")

Sources (3)

5 occurrences in the corpus; indexed by 1 book

Cite this entry

Stable addresshttps://dataviz.adrientaudiere.com/en/term/funnel-plot.html

ReferenceTaudière Adrien. 2026. funnel plot. In Visualization Vocabulary, version 1.0.0. IdEst. https://dataviz.adrientaudiere.com/en/term/funnel-plot.html

BibTeX
@incollection{taudiere2026-funnel-plot,
  author    = {Taudière, Adrien},
  title     = {funnel plot},
  booktitle = {Visualization Vocabulary},
  year      = {2026},
  version   = {1.0.0},
  publisher = {IdEst},
  url       = {https://dataviz.adrientaudiere.com/en/term/funnel-plot.html},
  note      = {CC0 1.0}
}

Page created on 2026-10-13. Text last changed on 2026-11-02. Images last changed on 2026-11-12. Numbers computed on 2026-10-22.