Unit Chart (ISOTYPE)
chartAlso known as: ISOTYPE chart, pictogram chart, icon array, waffle chart
Description
A unit chart represents data by mapping each discrete unit (a person, a dollar, a case) to an individual visual mark — typically a circle, square, or icon. Instead of encoding magnitude through abstract channels like bar length or angle, the unit chart leverages the human ability to perceive one-to-one correspondence: ten icons mean ten units. This directness makes unit charts exceptionally accessible to general audiences, including those with low data literacy.
The approach has roots in the ISOTYPE (International System of Typographic Picture Education) method developed by Otto Neurath and Gerd Arntz in the 1930s. Their pictorial statistics used rows of standardized icons to communicate social and economic data to the public. Modern unit charts extend this principle with grids, arrays, and interactive highlighting, but the core idea remains: show the data as countable things.
Unit charts are most effective when the total count is moderate (under a few hundred) and when the message involves proportions, such as “3 out of 10 people…” or “60% of the budget goes to…”. When individual icons are colored by category, the chart doubles as a composition display and a comparison tool. The spatial arrangement — grid, row, or clustered — can emphasize different aspects of the data.
When to Use
- Communicating counts and proportions to broad, non-technical audiences
- Showing “X out of Y” relationships where each unit matters (e.g., risk communication)
- Making abstract statistics feel concrete and human-scale
- Part-to-whole comparisons with small totals (fewer than ~200 units)
- Infographics and editorial data visualization
When NOT to Use
- When totals are very large (thousands or millions) — icons become uncountable; use a bar chart or area graph
- When precise comparison of values is needed — position-based encodings like bar charts are more accurate
- For continuous data or distributions — use a histogram or violin plot
- When the audience is analytically sophisticated and speed of reading matters more than accessibility
Anatomy
- Unit marks: Individual icons, circles, or squares, each representing a fixed quantity (e.g., 1 icon = 100 people).
- Grid layout: Units arranged in rows and columns; the total count determines the array size.
- Color encoding: Units colored by category to show composition within the total.
- Legend key: Indicates what each icon represents and what each color means.
- Grouping: Units may be grouped by category into separate rows or clusters.
- Annotation: Labels or callouts highlighting specific proportions (“3 out of 10”).
Variations
- Waffle chart: A 10x10 grid of squares where each cell represents 1%, forming a part-to-whole display.
- Pictogram chart (ISOTYPE): Uses domain-specific icons (people, cars, houses) instead of abstract shapes.
- Icon array: A grid of person-shaped icons used in health risk communication to show “1 in X” probabilities.
- Grouped unit chart: Units clustered by category with spatial separation between groups.
- Animated unit chart: Units transition between groupings or color states to show change over time or simulate processes.
Code Reference
// Observable Plot - waffle-style unit chart
// Each cell represents one unit, colored by category
const units = data.flatMap(d =>
Array.from({length: d.count}, (_, i) => ({category: d.category, i}))
);
Plot.plot({
marks: [
Plot.cell(units, {
x: (d, i) => i % 10,
y: (d, i) => Math.floor(i / 10),
fill: "category",
rx: 2,
tip: true
})
],
x: { axis: null },
y: { axis: null },
color: { legend: true }
})