// SLIDE 01 — HOOK

LINE GRAPH

The gap was 22 points in 2016 — it is 67 in 2024

Line Graph — Figure 43.1 — The gap was 22 points in 2016 — it is 67 in 2024
NARRATION

The gap was 22 points in 2016 , it is 67 in 2024 Figure 43.1 , The gap was 22 points in 2016 , it is 67 in 2024

// SLIDE 02 — WHAT THIS CHART IS

WHAT THIS CHART IS.

A line graph encodes quantitative values as position along the y-axis — the most accurate perceptual channel in Clevelan

NARRATION

A line graph encodes quantitative values as position along the y-axis , the most accurate perceptual channel in Cleveland and McGill's hierarchy , and connects successive points with a line that implies continuity. The line itself is not a data encoding; it is a visual metaphor for the path a value took between measurements. An upward slope means increase; a downward slope means decrease; diverging lines mean a growing gap. These readings are pre-attentive , the direction is understood before any axis is read.

// SLIDE 03 — WHY IT WAS CHOSEN HERE

WHY IT WAS CHOSEN HERE.

The data has a continuous time axis (annual, 2016–2024) and three series whose divergence is the message. A line graph i

NARRATION

The data has a continuous time axis (annual, 2016, 2024) and three series whose divergence is the message. A line graph is uniquely suited to divergence stories: the visual distance between lines at any x-position directly encodes the gap. In 2016 the three lines start close together; by 2024 the space between them is dramatically wider. No other chart form renders that expanding space as immediately.

// SLIDE 04 — WHAT GROUPED BARS WOULD BREAK

WHAT GROUPED BARS WOULD BREAK.

A grouped bar chart of this data requires 9 year-groups × 3 bars = 27 bars. Each year-group reads as a comparison at a m

NARRATION

A grouped bar chart of this data requires 9 year-groups times 3 bars = 27 bars. Each year-group reads as a comparison at a moment rather than a trajectory over time . The viewer must mentally connect the high-income bars across all nine groups to perceive the trend , work the line chart does automatically. More critically, the growing gap between series cannot be seen in grouped bars without computing differences.

// SLIDE 05 — FRAMEWORK REFERENCE & THE ONE

FRAMEWORK REFERENCE & THE ONE DECISION WORTH KNOWING.

The one decision worth knowing: lines animate in order from highest final value to lowest — high-income first, low-incom

NARRATION

The one decision worth knowing: lines animate in order from highest final value to lowest , high-income first, low-income last. This is not alphabetical. It creates a deliberate reveal: the viewer sees the leading line establish a ceiling, then watches the gap widen as subsequent lines draw in below. The ordering is an editorial argument that the distance matters, not just the levels.

// SLIDE 06 — FRAMEWORK REFERENCE

FRAMEWORK REFERENCE

FT Visual Vocabulary + Tufte FT Visual Vocabulary: Change over time — Trend . Abela quadrant: Comparison (items over tim

NARRATION

FT Visual Vocabulary + Tufte FT Visual Vocabulary: Change over time , Trend . Abela quadrant: Comparison (items over time, many periods). Tufte: the line graph has among the best data-ink ratios of any chart form , every pixel of line is a data encoding. Gridlines are kept light and sparse; they are references, not decoration.

// SLIDE 07 — PROMPT

PROMPT

line-graph.htmla full HTML page with inline CSS and inline D3 v7 (loaded from The chart should fill the viewport, be responsive on resi
line-graph/data.jsonthe data file the chart loads via d3.json("./line-graph/data.json"), with a fallback inline literal in the HTML if the f
·Multi-series time data. Each series has an id, display label, line style, and an array of {year, value} objects. All ser
titlestring — chart headline
unitstring — y-axis label / tooltip unit descriptor
NARRATION

Paste this into Claude Code to generate a working version of this chart, plus its data file. The result will not be a perfect replica , the goal is that the reader can run the prompt, get a chart of this type, and read its source. Generate a complete, self-contained line graph in D3 v7. Two files:

// SLIDE 08 — AI WAYBACK MACHINE

AI WAYBACK MACHINE.

Nicolas OresmeRun this:"Nicole Oresme"Now make the prompt better.
NARRATION

The ideas in this chapter didn't appear from nowhere. Nicolas Oresme drew the first known time-series-style line graphs in the 14th century , plotting velocity against time and computing the area beneath. He worked centuries before the analytical geometry Descartes is usually credited with founding. Nicolas Oresme, 14th century. AI-generated illustration based on a public domain painting (Wikimedia Commons).

// SLIDE 09 — THESIS

THE CORE CLAIM.

The ideas in this chapter didn't appear from nowhere. Nicolas Oresme drew the first known time-series-style line graphs

Nicolas Oresme, 14th century. AI-generated illustration based on a public domain painting (Wikimedia Commons).

NARRATION

The ideas in this chapter didn't appear from nowhere. Nicolas Oresme drew the first known time-series-style line graphs in the 14th century , plotting velocity against time and computing the area beneath. He worked centuries before the analytical geometry Descartes is usually credited with founding. Nicolas Oresme, 14th century. AI-generated illustration based on a public domain painting (Wikimedia Commons).

// SLIDE 10 — CLOSE

ASK THE QUESTION. APPLY THE FRAMEWORK.

WHAT THIS CHART IS//WHY IT WAS CHOSEN HERE//WHAT GROUPED BARS WOULD B

Brutalist D3 × Claude · Ch.43 · Line Graph

NARRATION

That is the framework. Brutalist D3 times Claude, chapter 43: Line Graph. The patterns are now in place. Apply them.

01 / 10
Brutalist D3 × Claude · Ch.43 · Nik Bear Brown