Data Storytelling — Style Prompt

A chart that tells a story: real data, drawn mark by mark on cream paper by a red–blue pencil, with handwritten notes pinned to the numbers. The chart itself is the camera, the rhythm and the plot. References (grammar only): Hans Rosling's 200 Countries, 200 Years, 4 Minutes (one dot is a character), Ed Hawkins' warming stripes (a diverging ramp on a reference mean, no axes), The Pudding / NYT scrollytelling (one idea at a time, growing axes, pinned notes). Copy none of their charts, layouts or typefaces; never name them in the film.

1. Essence, and what it is not

The chart is the film. Every mark is a real number and every movement is a meaningful chart operation (a mark lands, an axis grows, the scale changes, a series morphs, a note is pinned). The data is real, openly licensed and traceable. You change the framing, never the numbers.

Pick the chart the data asks for:

The data is about Chart
comparing categories, rankings bars, a ranked bar race
a relationship between two measures scatter or bubble chart (one dot can be a character)
place map, choropleth, dots on a map
parts of a whole, counts of people unit / waffle chart, proportional squares
before → after slope or dumbbell chart
a distribution histogram, beeswarm
where things go flow / Sankey
change over time line or dot series, stripes, area

Three layers make it a story, not an infographic: a human scale (handwritten notes pinned to marks), a performer (a physical pencil that draws every mark), and sonification (each mark is a pitch; the trend is heard before it is read).

Not a dashboard (one idea at a time), not a keynote with charts (no slides), never decoration.

2. Materials & rendering

3. Colour logic

4. Type & subtitles

5. Motion quality

6. Camera grammar

A 2D camera {x, y, zoom, roll} over one sheet of paper. A film is one take; a hard cut is rare and meaningful. The moves below are a vocabulary, not a route. Opening and ending come from the topic.

Move Expresses Can serve
Extreme close-up on one mark, following its leader One fact, one life a single case; a named person
Full view first, then dive to one mark The pattern before the case a familiar trend; a myth to correct
Pull back as axes grow out of the marks The frame arrives with the unit naming the measure; widening a claim
Track the pencil, newest mark at ~60 % of width Progress: the past behind, the future ahead a series in time; a race; a queue
Pedestal with rising data, a Dutch angle creeping in Escalation, unease runaway growth; a debt
Punch-in over 2 frames, decaying shake, jolt on rescale Surprise, a broken frame an outlier; a crash
Fast pull-out, roll, small constant tremor A rush a boom; a cascade; a panic
Locked-off The transformation is the movement a morph; a slow reading
Hold on one mark, then pull back The part inside the whole a verdict; context
Pull and pan to add more real data Scale switch a longer record; the rest of the list
Lateral pan across notes in the memory zone Recollection a biography; a timeline of events

Framing: subjects fill ≥ 1/3 of frame height at key moments. When the real axis scrolls off-screen, pin its tick labels to a paper strip at the frame edge (frozen pane).

7. Sound palette

8. Native moves

A menu: use the ones your story needs.

9. Pitfalls of the medium

10. Engine

demo/engine.js (Canvas 2D, world units = chart pixels at zoom 1) is the style: paper, camera, value ramps, pencilStroke (any polyline in pencil), inkShape (any closed shape: bars, areas, map shapes), plotShape, handText, dataDot, morphMark, annotation geometry, drawPencil, caption. demo/music/score.py holds the sonification. The function table and a minimal example are in DEMO.md.

11. Variation space

You decide the dataset, the chart, the human scale, the notes, the opening, the ending, the camera path, the pacing and the silences. All far from our demo:


How our demo was made (story, shots, score, end card, build): DEMO.md. Read it after your treatment exists.