14  Color Theory and Accessibility in Visualizations

14.1 Why Colour Matters in Visualisation

Colour is the most powerful and the most misused channel in business charts.

Colour, used well, is a fast pre-attentive channel that can guide the eye in less than a quarter of a second. Used badly, it confuses the reader, distorts quantitative perception, and excludes a significant minority of the audience.

The discipline of colour in data visualisation rests on three pillars: colour theory (the structure of the colour space and the rules for combining colours), the role colour plays in encoding data (categorical, sequential, diverging), and accessibility (designing so that colour-vision-deficient and low-vision readers can still read the chart). Each of these has implications a working analyst must understand.

14.2 Foundations of Colour Theory

A small set of structural ideas underpins every palette decision:

  • The colour wheel organises hues around a circle. The three primary colours (red, yellow, blue in the traditional artist’s wheel; red, green, blue in the digital wheel) combine to form secondary and tertiary colours.
  • Hue is the colour name itself — red, blue, green. Saturation is the intensity or vividness. Lightness (or value) is how light or dark it is. Together, the HSL and HSV colour models give designers far more useful control than the raw RGB triplet that the screen renders.
  • Warm colours (reds, oranges, yellows) feel close and active. Cool colours (blues, greens, purples) feel distant and calm. The choice has emotional and attention-shaping consequences.
  • Common harmony schemes include monochromatic (one hue at varying lightness), analogous (neighbouring hues), complementary (opposite hues), split-complementary, triadic, and tetradic.

flowchart TD
    H["Hue, Saturation,<br>Lightness"]
    H --> M["Monochromatic<br>One hue at<br>varying lightness"]
    H --> A["Analogous<br>Neighbouring<br>hues"]
    H --> C["Complementary<br>Opposite<br>hues"]
    H --> T["Triadic<br>Three evenly<br>spaced hues"]
    H --> S["Split-<br>Complementary"]
    style H fill:#e3f2fd,stroke:#1976D2
    style M fill:#e8f5e9,stroke:#388E3C
    style A fill:#fff8e1,stroke:#F9A825
    style C fill:#fff3e0,stroke:#EF6C00
    style T fill:#fce4ec,stroke:#AD1457
    style S fill:#ede7f6,stroke:#4527A0

14.3 The Three Roles of Colour in Data Visualisation

In data visualisation, colour serves one of three encoding purposes, and the right palette type depends on which role colour is playing. The framework, codified in the ColorBrewer project of Cynthia A. Brewer et al. (2003) and now embedded in virtually every major visualisation library, recognises three palette families.

flowchart TD
    R["What does colour<br>encode?"]
    R --> Q["Categorical<br>(Qualitative)<br>Distinct unordered<br>categories"]
    R --> S["Sequential<br>Ordered values from<br>low to high"]
    R --> D["Diverging<br>Values either side of<br>a meaningful midpoint"]
    Q --> Q1["Distinct hues,<br>similar lightness;<br>≤ 8 categories"]
    S --> S1["Single hue, varying<br>lightness; or perceptually<br>uniform multi-hue"]
    D --> D1["Two hues meeting at<br>a neutral midpoint;<br>positive vs negative,<br>above vs below target"]
    style R fill:#e3f2fd,stroke:#1976D2
    style Q fill:#e8f5e9,stroke:#388E3C
    style S fill:#fff8e1,stroke:#F9A825
    style D fill:#fce4ec,stroke:#AD1457

TipThe Three Palette Families
Palette When to Use Examples
Categorical (Qualitative) Distinct, unordered categories — segments, products, regions ColorBrewer Set1, Set2, Tableau 10, D3 Category 10
Sequential Ordered values from low to high — incidence rates, counts, scores Single-hue blues; multi-hue viridis, cividis, magma, inferno, plasma
Diverging Values either side of a meaningful midpoint — variance from target, change from baseline ColorBrewer RdBu, BrBG, RdYlGn (with CVD caveats)

A common error is to use a sequential palette where the data is categorical, or a diverging palette where the data does not have a meaningful midpoint. The reader’s eye attempts to read order or polarity that does not exist in the data.

14.3.1 Practical Guidance for Each Role

  • Categorical: Use no more than seven or eight distinct colours. For more categories, use small multiples or grouped categories. Keep the lightness roughly constant so no single category visually dominates.

  • Sequential: A single-hue palette with varying lightness is the simplest reliable choice. For wider range or perceptual uniformity, use the viridis family.

  • Diverging: Place a clear neutral colour (light grey, beige, white) at the midpoint and ensure the two ends are equally salient. Avoid red-green diverging palettes when accessibility matters.

14.4 Perceptually Uniform Palettes

A palette is perceptually uniform if equal steps in the data correspond to equal steps in perceived colour. This property is what allows the human eye to read magnitude faithfully from colour.

Fabio Crameri et al. (2020), in a Nature Communications article on the misuse of colour in science, demonstrate that the popular rainbow palette systematically distorts perceived magnitude — it has bands of fast and slow change that do not correspond to equal steps in the data, and it disappears for many colour-vision-deficient readers. They argue that the field should retire rainbow palettes in favour of perceptually uniform alternatives.

The most widely adopted perceptually uniform palettes are:

  • viridis: from dark purple through teal and green to yellow; the de facto standard.
  • cividis: similar structure, optimised specifically for colour-vision deficiency.
  • magma: from black through purple-red to pale yellow.
  • inferno: from black through red to yellow.
  • plasma: from dark blue-purple through pink-orange to yellow.
  • scientific colour maps of Fabio Crameri et al. (2020): batlow, roma, vik, broc, and others, designed and tested for both perceptual uniformity and CVD friendliness.

These palettes are now built into every major visualisation library — Matplotlib, ggplot2, Tableau, Power BI, D3, Plotly. Use them as the default; reach for alternatives only with reason.

14.5 Colour-Vision Deficiency and Accessibility

Roughly eight per cent of men and 0.5 per cent of women of European descent have some form of inherited colour-vision deficiency (CVD). The figures vary across populations, but in any business audience of meaningful size, several readers cannot reliably distinguish certain colour pairs.

Designing for CVD is therefore not an optional kindness; it is professional discipline.

TipForms of Colour-Vision Deficiency
Type Description Effect
Protanopia / Protanomaly Reduced or absent long-wavelength (red) sensitivity Red and green appear similar; reds appear darker
Deuteranopia / Deuteranomaly Reduced or absent medium-wavelength (green) sensitivity Red and green appear similar; the most common form
Tritanopia / Tritanomaly Reduced or absent short-wavelength (blue) sensitivity Blue and yellow appear similar; rare
Achromatopsia No colour vision; sees in greyscale only Very rare; design must work in greyscale

The dominant practical implication is that red-green pairings are unsafe. Use red-blue or orange-blue diverging palettes, or supplement red-green with shape, position, or pattern.

14.5.1 The WCAG Standard

The Web Content Accessibility Guidelines (WCAG) 2.1, maintained by the W3C, is the international standard for digital accessibility. The most relevant criteria for charts:

  • Contrast Ratio: Text and graphical objects should meet a minimum contrast ratio with their background — 4.5:1 for normal text, 3:1 for large text and graphical objects.
  • Use of Colour: Information must not be conveyed by colour alone; an additional cue (shape, pattern, label, position) is required.
  • Text Resize: Text must remain readable when resized up to 200 per cent.
  • Alternative Text: Charts in digital reports should include descriptive alt text or accessible data tables.

A useful test: convert the chart to greyscale. If the message is still readable, the chart respects the WCAG use of colour criterion.

14.5.2 Alternative Encodings

When colour-blind-safety or accessibility is a concern, supplement colour with one of the following:

  • Shape: Different markers (circle, triangle, square) for different categories on a scatter plot.
  • Pattern or Texture: Hatching, dotting, or stippling for different categories on a printed bar chart.
  • Position and Order: Sorted bars or aligned axes that communicate ranking without relying on colour.
  • Direct Labels: Each line or bar labelled directly, rather than relying on a colour-coded legend.
  • Line Style: Solid, dashed, dotted lines for different series in a line chart.

14.6 Cultural Meanings of Colour

Colours carry cultural meaning, and a chart prepared for an Indian audience may need different palette choices than the same chart for a Western or East Asian audience. Some examples:

  • Red: Signals danger and loss in Western financial contexts; signals luck, prosperity, and celebration in Chinese and Indian contexts.
  • Green: Signals growth and gain in Western financial contexts; signals fertility and Islamic religious symbolism in others.
  • White: Signals purity in Western contexts; signals mourning in many South and East Asian contexts.
  • Yellow: Signals caution in Western contexts; signals royalty and sacredness in some East Asian contexts.

These differences rarely overrule basic colour-encoding principles, but a designer producing public-facing or cross-border content should know that the same palette can read differently to different audiences. The safest course in international or government work is a palette that relies on perceptual properties (lightness, saturation) rather than on cultural associations of hue.

14.7 Practical Guidelines for Colour in Charts

A short set of working rules:

  • Less is more: Use colour deliberately. Most chart elements should be a neutral grey, with colour reserved for the headline finding.
  • Match palette to data role: Categorical for distinct categories, sequential for ordered values, diverging only with a meaningful midpoint.
  • Default to perceptually uniform palettes for sequential and diverging data.
  • Avoid red-green encoding when accessibility matters; use red-blue or orange-blue instead.
  • Reserve red for losses, exceptions, and warnings in business contexts where Western convention applies; use it sparingly so it retains impact.
  • Maintain consistent colour mappings across charts in the same report or dashboard. The same product line should be the same colour everywhere.
  • Limit the categorical palette to seven or eight colours; for more, group, facet, or use small multiples.
  • Always supplement colour with another encoding for critical distinctions.
  • Test in greyscale and through CVD simulators before publishing.
  • Respect the medium: Screen, print, and projector each render colour differently. A colour that reads well on a designer’s screen may read poorly when projected.

14.8 Tools for Verifying Colour Choices

A handful of free tools cover virtually every check a working analyst needs:

  • ColorBrewer (colorbrewer2.org): Interactive picker for categorical, sequential, and diverging palettes, with CVD and print-safe filters.
  • Coblis Colour-Blindness Simulator: Upload a chart and see it as it would appear under each form of CVD.
  • Adobe Color: Builds harmony schemes from a base colour and exports the values.
  • WebAIM Contrast Checker: Computes WCAG contrast ratios for foreground-background pairs.
  • Sim Daltonism (macOS) and Color Oracle (Windows, Linux, macOS): Live screen filters that show the entire desktop as a CVD reader would see it.
  • Built-in palette functions: viridis, RColorBrewer, and scico packages in R; matplotlib colormaps and seaborn palettes in Python; native viridis support in Tableau and Power BI.

A workflow that builds these checks into the design process — pick palette, verify CVD, check WCAG, test in greyscale — turns accessibility from afterthought into routine.

14.9 Common Pitfalls

  • Rainbow Palette for Continuous Data: Using a non-perceptually-uniform rainbow scale where the eye reads jumps and bands that are not in the data.

  • Categorical Palette for Ordered Data: Using distinct hues to encode ranks, levels, or magnitudes. The reader’s eye sees them as unrelated.

  • Sequential Palette for Categorical Data: Using a light-to-dark single-hue palette to encode product categories. The reader’s eye reads an order that does not exist.

  • Diverging Palette Without a Midpoint: Using a diverging palette for data that does not have a meaningful zero. The reader assumes a polarity that is not in the data.

  • Red-Green Encoding: The most common accessibility error. Eight per cent of male readers cannot reliably tell the two apart.

  • Too Many Colours: A categorical palette with twelve colours is unreadable. Use fewer categories or different small multiples.

  • Inconsistent Mapping: The same product appears blue on one chart and orange on another in the same report. The reader has to relearn the mapping each time.

  • Saturation Overuse: Every chart element saturated to maximum, so nothing stands out. Reserve high saturation for the focal element.

  • Colour Without a Second Cue: Using colour as the only encoding for a critical distinction. The chart fails for CVD readers, in greyscale printing, and on projectors with poor colour reproduction.

  • Bright White Backgrounds: Pure white at full saturation against bright text can cause eye strain. Off-white or very light grey is gentler without losing contrast.

  • Ignoring the Medium: Designing on a calibrated 4K screen and publishing to a smartphone or projector without checking how the palette renders.

14.10 Illustrative Cases

The following cases illustrate how colour decisions shape the readability of business charts. They describe common situations and the reasoning behind the design choice.

Branch Performance Heatmap with Diverging Palette

A retail bank visualises branch performance against target as a heatmap of regions by months. The first design uses a green-to-red diverging palette. The redesign switches to a blue-to-orange diverging palette with a neutral midpoint at zero, retaining the polarity (positive versus negative) while remaining legible to red-green CVD readers. A small text label on each cell shows the exact percentage variance.

Choropleth Map of Disease Incidence

A public-health dashboard uses a sequential palette to shade districts by incidence rate. The first design uses a red-to-green sequential ramp; the redesign switches to viridis, which is perceptually uniform and CVD-safe, and applies a logarithmic transformation so that order-of-magnitude differences are preserved.

Multi-Line Chart of Product Categories

A revenue-by-product chart with eight category lines is illegible. The redesign reduces the chart to one highlighted line — the focal product — coloured in a strong hue, with the other seven lines in grey. The headline category pops out instantly; the remaining lines provide context without competing for attention.

Annual Report Print Edition

A firm prepares its annual report for both digital and print distribution. Charts that read well on screen become muddy on the printer’s grayscale press. The team builds a set of charts that work in greyscale by relying primarily on position, length, and pattern, with colour added as a secondary cue for the digital version.

Cross-Cultural Product Catalogue

A consumer-goods firm prepares marketing dashboards for global markets. The default red-and-green stop-light palette of the corporate template reads as gain-versus-loss to Western audiences but as celebration-and-prosperity to Indian and Chinese audiences, with no clear polarity. The team retires the stop-light scheme in favour of a culturally neutral blue-orange diverging palette and supplements it with explicit text labels to remove ambiguity.


Summary

Concept Description
Foundations
Why Colour Matters Colour is the most powerful and most misused channel in business charts
Colour Theory
Colour Wheel Hues organised around a circle; primaries combine into secondaries and tertiaries
Hue, Saturation, Lightness Three properties giving designers more useful control than raw RGB
Warm and Cool Colours Warm hues feel close and active; cool hues feel distant and calm
Monochromatic Scheme One hue at varying lightness
Analogous Scheme Neighbouring hues on the wheel
Complementary Scheme Opposite hues on the wheel
Triadic Scheme Three evenly spaced hues
Split-Complementary Scheme A base hue plus the two hues adjacent to its complement
Three Roles of Colour in Data Viz
Categorical Palette Distinct unordered categories such as products or regions
Sequential Palette Ordered values from low to high such as incidence rates
Diverging Palette Values either side of a meaningful midpoint such as variance from target
Perceptually Uniform Palettes
Perceptually Uniform Palette Equal data steps map to equal perceived colour steps
Viridis Family De facto standard perceptually uniform multi-hue palette
Cividis Perceptually uniform palette optimised for colour-vision deficiency
Magma, Inferno, Plasma Perceptually uniform alternatives to viridis with different aesthetics
Crameri Scientific Colour Maps Scientific colour maps designed and tested for uniformity and CVD friendliness
Colour-Vision Deficiency
Colour-Vision Deficiency Reduced or altered colour vision; about eight per cent of men, 0.5 per cent of women
Protanopia Reduced or absent long-wavelength sensitivity; reds appear darker
Deuteranopia Reduced or absent medium-wavelength sensitivity; the most common form
Tritanopia Reduced or absent short-wavelength sensitivity; rare
Achromatopsia No colour vision; sees in greyscale only; very rare
WCAG and Accessibility
WCAG 2.1 Web Content Accessibility Guidelines; international standard for digital accessibility
Contrast Ratio 4.5:1 for normal text, 3:1 for large text and graphical objects
Use of Colour Criterion Information must not be conveyed by colour alone; supplement with shape, label, or position
Alternative Text Charts in digital reports should include descriptive alt text or data tables
Alternative Encodings
Shape Encoding Different markers for different categories on a scatter plot
Pattern or Texture Encoding Hatching, dotting, or stippling for different categories on a printed bar chart
Position and Order Sorted bars or aligned axes that communicate ranking without colour
Direct Labels Each line or bar labelled directly rather than relying on colour-coded legend
Line Style Solid, dashed, dotted lines for different series in a line chart
Cultural Meanings
Cultural Meaning of Red Danger and loss in the West; luck and prosperity in China and India
Cultural Meaning of Green Growth and gain in Western financial contexts; religious symbolism elsewhere
Cultural Meaning of White Purity in the West; mourning in many South and East Asian contexts
Cultural Meaning of Yellow Caution in the West; royalty and sacredness in some East Asian contexts
Practical Guidelines
Less Is More Use colour deliberately; most elements should be neutral grey
Match Palette to Role Categorical for categories, sequential for order, diverging for polarity
Default to Perceptually Uniform Use viridis-family or scientific colour maps unless there is a reason not to
Avoid Red-Green Encoding Eight per cent of male readers cannot tell red from green reliably
Reserve Red for Loss Use red sparingly so it retains impact for losses and warnings
Consistent Mapping Across Charts Same product or region uses the same colour across all charts in a report
Limit Categorical Palette Categorical palettes should carry no more than seven or eight colours
Supplement Colour with Another Encoding Use shape, pattern, position, or label alongside colour for critical distinctions
Test in Greyscale and CVD Simulators Convert the chart to greyscale and view through CVD simulators before publishing
Respect the Medium Screen, print, and projector each render colour differently; verify on the actual medium
Tools for Verification
ColorBrewer Interactive picker for categorical, sequential, and diverging palettes with accessibility filters
Coblis Simulator Upload a chart and see how it would appear under each form of CVD
Adobe Color Builds harmony schemes from a base colour and exports the values
WebAIM Contrast Checker Computes WCAG contrast ratios for foreground-background pairs
Sim Daltonism / Color Oracle Live screen filters that show the entire desktop as a CVD reader would see it
Common Pitfalls
Rainbow for Continuous Data Pitfall of using a non-uniform rainbow scale that introduces bands not in the data
Categorical Palette for Ordered Data Pitfall of using distinct hues to encode ranks or magnitudes
Sequential for Categorical Data Pitfall of using a single-hue light-to-dark palette to encode unordered categories
Diverging Without Midpoint Pitfall of using a diverging palette for data with no meaningful zero
Red-Green Encoding Pitfall Pitfall of red-green colour pairs that fail for the most common form of CVD
Too Many Colours Pitfall of categorical palettes with twelve or more colours that the eye cannot distinguish
Inconsistent Mapping Pitfall of inconsistent colour mappings across charts in the same report
Saturation Overuse Pitfall of saturating every element to maximum so nothing stands out
Colour Without a Second Cue Pitfall of using colour as the only encoding for a critical distinction
Bright White Backgrounds Pitfall of pure-white backgrounds at full brightness that cause eye strain
Ignoring the Medium Pitfall of designing on one screen and publishing to a different medium without checking