Case Study 1: The Evolution of Chart Type Galleries

Chart-type galleries — organized collections of "here is a chart type, here is when to use it, here is how to make it" — have existed in various forms for decades. Edward Tufte's books contained gallery-like collections of examples. The R Graph Gallery (r-graph-gallery.com) and Python Graph Gallery (python-graph-gallery.com) created searchable web galleries. Tableau's "Show Me" feature is an interactive gallery built into the software. This chapter's gallery follows that tradition for Python. Understanding the evolution of galleries helps you use them more effectively.


The Print Era: Tufte and Cleveland

The earliest chart-type references were chapters in visualization textbooks. William Cleveland's Visualizing Data (1993) dedicated chapters to specific chart types with extensive examples. Edward Tufte's four books (1983-2006) contained hundreds of reproduced historical charts, each discussed in context. These were not "galleries" in the modern sense — they did not have "when to use / when not to use" summaries or copy-paste code — but they served the same function: showing practitioners what was possible and when each chart type was appropriate.

The print-era limitation was that you could not try the charts. You could see a Tufte small-multiple reproduced in high-quality print, but you could not copy the code and apply it to your own data. The gap between "I see what this chart type does" and "I can produce this chart type" was large.

Starting around 2010, web-based chart galleries began to fill the gap. Notable examples:

The R Graph Gallery (Yan Holtz, 2018): organized by chart type and by question category, with R code for each chart. The gallery was searchable and freely available. It became the de facto reference for R visualization practitioners.

The Python Graph Gallery (Yan Holtz, 2019): the Python equivalent, using matplotlib, seaborn, and Plotly. Same structure: chart types organized by category, with copy-paste Python code.

Data to Viz (data-to-viz.com, 2018): a decision-tree tool that guides users from their data type and question to the appropriate chart type. Interactive and visually elegant. Linked to both R and Python galleries.

From Data to Viz (fromdata-to-viz.com): similar to Data to Viz, with an emphasis on common mistakes and pitfalls for each chart type.

Observable (observablehq.com): a notebook platform for JavaScript visualization. The Observable community produced hundreds of gallery entries, each a working interactive notebook.

These web galleries solved the print-era problem: code was included and could be copied directly. They also added discoverability — you could search, filter, and browse in ways a printed book could not support.

Modern visualization tools increasingly include built-in chart type galleries:

Tableau's "Show Me" feature suggests chart types based on the selected data fields. It is an interactive gallery embedded in the software.

Plotly Express itself is a kind of gallery: px.scatter, px.line, px.bar, px.histogram, px.box, px.violin, px.pie, px.treemap, px.sunburst, px.choropleth — each function is a chart type, and the documentation gallery shows examples.

Altair's example gallery (altair-viz.github.io/gallery/) organizes examples by chart type and demonstrates the grammar-of-graphics approach to each.

Datawrapper's chart type selector guides users through a visual decision process before they create a chart.

These built-in galleries reduce the friction further: you do not even need to leave the tool to find the right chart type.

Why Personal Galleries Matter

Despite the abundance of public galleries, building a personal gallery is valuable:

  1. Your data, your style. Public galleries use generic data. Your personal gallery uses your actual datasets and your brand. The examples are directly reusable.
  2. Your code patterns. Public gallery code is generic. Your personal gallery uses your helper functions, your style sheets, your conventions.
  3. Your judgment. You have learned, through practice, which chart types work for your domain and which do not. Your personal gallery captures this judgment.
  4. Speed. Looking up a chart type in your personal gallery takes seconds. Looking up the same type in a public gallery, adapting the code, applying your brand, and testing — that takes minutes or hours.

A personal gallery is a collection of 10-20 chart templates that you use regularly, each with your brand applied and your preferred code patterns. It lives in a folder, a notebook, or a module. It grows over time as you encounter new chart types and refine your patterns.

The Chapter 35 gallery in this book is a starting point. Copy the entries you need, adapt them to your data and brand, and build your personal version. The public gallery is a reference; the personal gallery is a tool.


Discussion Questions

  1. On the evolution. Galleries have moved from print (Tufte) to web (R/Python Graph Gallery) to built-in (Tableau, Plotly). What is the next step?
  2. On personal vs. public. How much of a personal gallery do you already have, even if it is informal?
  3. On discoverability. How do you currently discover new chart types? Through galleries, books, or seeing other people's work?
  4. On the gallery's limits. The Chapter 35 gallery has 50 types. What is missing that you would add for your domain?

Chart galleries are one of the most practical tools in a visualization practitioner's kit. Public galleries teach you what is possible; personal galleries make it fast. Build both.