Module 6: Adding Interaction
Make your Module 3 visualization explorable. Layer in one interaction so the decision-maker can answer their own follow-up question inside the chart, without coming back to you.
Quick Intro
What is interaction?
Why it matters
How it fits into data storytelling
Small example
Static
Cycling trips in Munich, 2018β2023.
22% increase, 2018β2023
City council member: "Does the trend hold in my ward?" β has to ask you for another chart.
+ Filter
Cycling trips, with district dropdown.
same 22% line by default
switch to "Schwabing": 31%
switch to "Bogenhausen": 8%
Same council member, 3 seconds later: "OK, mine is at 31% β even better than the citywide trend."
Five patterns to choose from
Filter
Narrow what's shown (year, district, mode of transport).
"Show only Bogenhausen."Hover-detail
Mouse-over reveals exact number, source, or method note.
"2023 figure: 3,142 daily trips (Destatis)."Drill-down
Click an element to zoom into a sub-view.
"Click a district to see street-level."Brush / range
Drag to highlight a sub-segment of the data.
"Drag across summer months only."Animation / timeline
Play through years or scenarios.
"Press play: watch the map fill in 2018β2023."When NOT to add interaction
- The audience has under 5 minutes (they won't learn the controls)
- There's only one decision being made (a static chart that answers it wins)
- The output medium is print or PDF (interaction is impossible)
- The chart already shows the answer at a glance
Guided Practice
The starting chart
2019 βββββββββ 156k
2020 ββββββββββββ 198k
2021 βββββββββββ 187k
2022 ββββββββββββ 201k
2023 βββββββββββββ 217k
Pick the right pattern
- Filter β by district. The follow-up is literally "filter to my district." β Strong match.
- Hover-detail β exact numbers on each bar. Useful, but doesn't answer "my district".
- Drill-down β click year β show districts that year. Works, but more clicks for the same answer.
- Brush β drag a year range. Doesn't address district question.
- Animation β too theatrical for one council member's question.
Spec the interaction (no code needed)
Spec
Pattern: Filter
Control: Dropdown above the chart, labeled "District", default "All districts".
Options: 25 Munich district names, plus "All".
Effect: When changed, all bars recalculate to show only trips in the selected district. Headline updates to "Cycling trips in [district], up X% over five years."
Follow-up it answers: "Does the citywide trend hold in my district?"
Applied Task
Spec one interaction for the Module 3 chart you described above. Pick one pattern, one audience, one follow-up question. Keep it small β one interaction usually beats three.