Skip to content

William S. Cleveland

2 min read · Updated 27 Oct 2026

William S. Cleveland’s approach is graphical perception: encode the comparison that matters with the task readers judge most accurately. Books: The Elements of Graphing Data (1985; revised 1994) and Visualizing Data (1993).

Use it where readers must judge values accurately: ranking, small differences, relationships and distributions. For other pages, see Choose an expert.

William S. Cleveland: Ordered dots on a common scale make close comparisons easier.

Illustrative example with synthetic data. Ordered dots on a common scale make close comparisons easier.

Encode the comparison as position on a common scale

Section titled “Encode the comparison as position on a common scale”

Readers judge these tasks from most to least accurately. Put the main comparison as high as possible.

Rank Task Types that use it
1 Position on a common scale dot, scatter, line, unstacked bar
2 Position on identical, non-aligned scales One chart repeated in a card grid
3 Length Stacked bar segments above the first
4 Angle and slope pie; the slope of a line
5 Area treemap; scatter with a size measure
6 Colour heatMap; setColoringType gradient
  • Compare parts with setBarChartLayout groups (bar), so every bar starts on the common baseline.
  • Keep compared measures on one axis; do not move one with changeMeasureAxis (bar, line).

Prefer dot plots when zero is not part of the comparison

Section titled “Prefer dot plots when zero is not part of the comparison”

A dot marks a value by position only, so its scale need not include zero. dot takes exactly two dimensions and one measure; see Visualization definitions. Use a bar when the value is an amount whose zero matters.

Check Operation (dot)
Category labels read horizontally setOrientation
Dots ordered by value setSortingEnabled, setSortingDirection
One colour when the second dimension need not be told apart setColoringType single, setColoringColor

Sort unordered categories by the measure with setSortingEnabled and setSortingDirection (bar, dot). Keep the natural order for months, sizes and other ordered categories; group dates with setDimensionTemporalGrouping (Charts).

The slope of a line on screen depends on the plot’s width-to-height ratio, and slopes near 45 degrees are judged most accurately. Give the chart host an explicit ratio (Keep proportions fixed inside a card) and recheck it at each reflow tier.

Prefer For
Sorted dot One measure for many categories, split by a second dimension
Sorted bar Amounts whose zero matters
line Change over time
scatter Two measures against each other
histogram Distribution of one numeric field
Avoid Because
pie Angle and area are judged less accurately than position
Stacked bars and setLineChartType stacked Only the bottom series sits on the common baseline
A secondary measure axis Two scales in one plot
treemap and heatMap for precise comparison Area and colour rank lowest

Pairs with card grid, compare and table-first layouts, and the Economist and explainer styles.

A one-dimension dot plot, trellis panels, aspect-ratio banking, smoothers and quantile plots are not available; see App limitations. Fixed measure-axis ranges and logarithmic scales are supported by the axis controls.