Accessible charts – measurement report

Worked example by Ali Karabüyük, 2026-10-06. Data: NASA GISTEMP v4 annual global temperature anomaly 1880–2025 (public domain), via datasets/global-temp (data/annual.csv, SHA-256 c9f98d4dfb6a985d…). All values below were produced by the scripts in the zip.

Before vs after
MeasureBeforeAfter
axe-core violations (rules / nodes), 1280 px7 / 130 / 0
axe-core violations (rules), 320 px70
Page width at 320 px viewport1008 px320 px
Smallest chart text (rendered)7.64 px (legend in PNG)14 px (SVG, at 320 px)
Smallest HTML text10 px14 px
Line series vs white (non-text 3:1)1.85:1, 2.43:13.58:1, 14.64:1
Line series vs each other1.31:14.09:1
Line series ΔE2000 normal / deutan / protan / tritan61.9 / 3.1 / 17.6 / 58.653.1 / 61.3 / 50.0 / 58.6
Bar colours below 3:1 vs white8 of 15 (min 1.12:1)0 of 2 (min 3.58:1)
Bars: smallest ΔE2000 between neighbours, protan0.850.0
Annual values available as text0 / 146146 / 146
Decade values available as text0 / 1515 / 15
Infographic key numbers as text0 / 22 / 2
Chart images with accessible name0 / 32 / 2 (+15 named bars)
PDF/UA-1 (veraPDF)not compliant, 9 failed checkscompliant, 0 failed checks
PDF Figure tags with /Alt0 / 32 / 2
PDF tables (TH with Scope)02 tables, 168 TH

axe-core 4.13.0 violations, before (1280 px)

After: none at 1280 px and at 320 px.

veraPDF PDF/UA-1, before

After: compliant, 0 failed checks (profile: PDF/UA-1 validation profile).

Tools

What these checks do not cover