Visualization VocabularyDataviz vocabulary
Diagram: scatterplot matrix
Drawing: Adrien Taudière (CC0)
ggplot2 example: scatterplot matrix
Adrien Taudière (CC0); R code ↓; data: palmerpenguins (Horst, Hill & Gorman 2020) (CC0)

Classification

  • chart
  • points and bubbles › scatterplots
  • correlation

Channels

Attestation

Scientific literature

OpenAlex: 231 papers since 1989, 26% in the last five years; mostly in Computer Science, Mathematics, Agricultural and Biological Sciences

Seminal references

R packages

R code of the ggplot2 example

library(ggplot2)
library(dplyr)
library(tidyr)
library(palmerpenguins)

## Every pair of measures in one panel: a self-join of the long table.
measures <- c(bill_length_mm = "Bill length", bill_depth_mm = "Bill depth",
              flipper_length_mm = "Flipper length")
long <- penguins |>
  filter(if_all(all_of(names(measures)), \(x) !is.na(x))) |>
  mutate(bird = row_number()) |>
  pivot_longer(all_of(names(measures)), names_to = "measure", values_to = "value") |>
  mutate(measure = factor(measures[measure], levels = measures))
pairs <- inner_join(long, long, by = c("bird", "species"), suffix = c("_x", "_y"),
                    relationship = "many-to-many") |>
  filter(measure_x != measure_y)
## Species named in one panel, next to their cloud.
names_at <- tibble(species = c("Adelie", "Chinstrap", "Gentoo"), value_x = c(34, 55, 55),
                   value_y = c(21, 21, 14), measure_x = factor("Bill length", levels = measures),
                   measure_y = factor("Bill depth", levels = measures))

p <- ggplot(pairs, aes(x = value_x, y = value_y, colour = species)) +
  geom_point(size = 0.4, alpha = 0.6) +
  geom_text(data = names_at, aes(label = species), size = 2.6) +
  facet_grid(measure_y ~ measure_x, scales = "free", switch = "both") +
  labs(title = "Within each species, the three measures rise together",
       subtitle = "Every pair of measures (mm), one point per penguin",
       x = NULL, y = NULL,
       caption = "Data: palmerpenguins (Horst, Hill & Gorman 2020)") +
  theme_lex_viz(base_size = 8, grid = "", arrows = "") +
  theme(legend.position = "none", axis.text = element_blank(),
        panel.border = element_rect(colour = "#d6d6d6", fill = NA, linewidth = 0.3),
        strip.placement = "outside")

Sources (22)

185 occurrences in the corpus; indexed by 4 books

Show the 22 sources

Cite this entry

Stable addresshttps://dataviz.adrientaudiere.com/en-only/term/scatterplot-matrix.html

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

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

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