Day 5 · 09:30
A visualiz-athon. Eight sector extracts. You pick one that smells like your P&L. You make one chart you would sign, and one you would refuse.
You will leave able to
- Choose a dataset whose shape matches a decision you actually own.
- Produce one board-ready chart with a title that does not over-claim.
- Critique a neighbour’s chart in five minutes using the week’s checklist.
The original Friday-equivalent threw people between public datasets (crime, prizes, lyrics). You get anonymised commercial extracts that span the functions in the room. Work in threes. Forty minutes to a first chart. Then we rotate.
The brief, for every table
- What decision does this chart change if it is true?
- What is the unit of observation? (lane-week, employee, campaign-week)
- What would a bar-of-means hide?
- What lurking variable would make the title a lie?
- Where is the file, and what is the extract date?
Pick your P&L
1. Supply chain — OTIF versus lead time
supplier-otif.csv. Four logistics partners, 24 weeks, lanes across Lagos, Kano, Onne, Abuja. Gulf Freight sits on the efficient frontier. Sahel Haulage is late and unreliable. Is that a sourcing decision or a lane decision?
otif <- read_csv("supplier-otif.csv") otif %>% ggplot(aes(lead_days, otif_pct, colour = supplier)) + geom_point(alpha = 0.7) + facet_wrap(~lane) + labs( title = "Reliability is a lane, not a logo", subtitle = "OTIF vs lead time, 24 weeks", x = "Lead time (days)", y = "OTIF %" )2. HR — attrition, tenure, engagement
hr-attrition.csv. Role family, band, tenure, engagement, regretted-exit flag. The CHRO question is not ‘is attrition high’. It is where regretted attrition clusters — usually early tenure, specific families, not a company-wide story.
hr <- read_csv("hr-attrition.csv") hr %>% ggplot(aes(tenure_years, engagement, colour = factor(attrition_flag))) + geom_point(alpha = 0.7) + labs( title = "Engagement and tenure", colour = "Exited" )3. Marketing — ROAS by channel
campaign-roas.csv. TV will lose a ROAS league table to Search. That is not a reason to cut TV. Rank channels against the job (reach, conversion, retention), not against one ratio.
4–8. The rest of the shelf
- breakfast-panel.csv — FMCG brand / channel interaction (Day 2).
- nps-by-channel.csv — banking CX distributions.
- voc-complaints.csv — qualitative, CX or HR.
- macro-correlations.csv — economics / ALCO.
- brand-mentions.csv — comms / strategy.
- sku-descriptions.csv — category / assortment.
Exercise 5.1
The chart you would sign
Deliver: one ggplot, a title, a subtitle that names the window and the unit, and one sentence on what the chart is not allowed to claim. Hang it (laptop or print) for the walk-around clinic.