Data Storytelling Atlas
Data Storytelling Atlas is a fictional OPF example for data storytelling teams. It demonstrates a realistic presentation structure with catalog-backed design and content payloads.
Metadata
Source
examples/gallery/design-and-media/data-storytelling-atlas.opf.json
Slides
10
Audience
regulators, candidates
Purpose
sell
Tone
authoritative
Source JSON
{
"$schema": "https://openpresentation.org/schema/opf/v1",
"name": "Data Storytelling Atlas",
"description": "Data Storytelling Atlas is a fictional OPF example for data storytelling teams. It demonstrates a realistic presentation structure with catalog-backed design and content payloads.",
"filename": "data-storytelling-atlas",
"language": "english-ca",
"audience": [
"regulators",
{
"id": "candidates",
"attentionBudgetMinutes": 26,
"technicalFluency": "high",
"decisionPower": "decision-maker",
"recommendedNarratives": [
"persuasive-sales"
],
"recommendedTones": [
"authoritative"
]
}
],
"purpose": {
"id": "sell",
"outcome": "Show regional patterns with maps, charts, and concise interpretation",
"successCriteria": [
"The audience can state the decision in one sentence.",
"The owner and next checkpoint are explicit."
]
},
"tone": {
"id": "authoritative",
"voiceCues": [
"Make the decision visible.",
"Use concrete operating language."
],
"avoid": [
"Do not bury the ask.",
"Do not over-explain obvious context."
]
},
"narrative": {
"id": "persuasive-sales",
"description": "Data Storytelling Atlas uses a compact evidence-to-decision arc for Civic Data Lab.",
"beats": [
{
"id": "context",
"name": "Context",
"slideType": "text",
"layoutHint": "text-1x"
},
{
"id": "evidence",
"name": "Evidence",
"slideType": "chart",
"layoutHint": "chart-1x"
},
{
"id": "commitment",
"name": "Commitment",
"slideType": "list",
"layoutHint": "list-3x"
}
]
},
"design": {
"theme": "dark",
"colorScheme": {
"id": "black-and-white",
"primary": "#B45309",
"secondary": "#BE123C",
"accent": "#6D28D9",
"background": "#FFFFFF",
"text": "#0F172A",
"custom": {
"signal": "#334155",
"risk": "#0369A1"
}
},
"fontScheme": {
"id": "consolas",
"heading": {
"family": "Aptos Display",
"weight": 700
},
"body": {
"family": "Aptos",
"weight": 400
},
"code": {
"family": "Consolas",
"weight": 400
}
},
"dimensions": "4:3",
"background": "#F8FAFC",
"titleAlignment": "right",
"contentAlignment": "left",
"contentBox": false,
"contentDirection": "horizontal",
"chartPrimary": "top",
"imageFill": "crop",
"listBullet": "character",
"logo": "asset:brand-logo",
"watermark": {
"src": "asset:watermark",
"opacity": 0.06
},
"header": {
"left": {
"section": true
},
"right": {
"image": "asset:brand-icon"
}
},
"footer": {
"left": {
"organization": true
},
"center": {
"text": "Internal planning draft"
},
"right": {
"slideNumber": true
}
},
"slideImage": {
"src": "asset:cover-bg",
"position": "left"
}
},
"slides": [
{
"id": "s1",
"section": "Opening",
"layout": "title-subtitle",
"tag": "Data storytelling",
"title": "Data Storytelling Atlas",
"subtitle": "Civic Data Lab Data storytelling",
"notes": "Open by naming the decision: Show regional patterns with maps, charts, and concise interpretation."
},
{
"id": "s2",
"section": "Context",
"layout": "text-3x",
"title": "Why This Matters",
"text": [
"Civic Data Lab should focus the next cycle on ",
{
"text": "show regional patterns with maps, charts, and concise interpretation",
"bold": true,
"color": "#B45309"
},
" while making the operating tradeoffs clear to data storytelling stakeholders."
]
},
{
"id": "s3",
"section": "Evidence",
"layout": "chart-3x",
"title": "Signal Trend",
"type": "chart",
"chart": {
"type": "bullet-column",
"data": {
"columns": [
"Quarter",
"Current",
"Baseline"
],
"rows": [
[
"Q1",
25,
22
],
[
"Q2",
29,
24
],
[
"Q3",
32,
26
],
[
"Q4",
36,
28
]
]
}
}
},
{
"id": "s4",
"section": "Options",
"layout": "table-1x",
"title": "Decision Options",
"table": {
"columns": [
"Workstream",
"Owner",
"Status",
"Decision"
],
"rows": [
[
"Data storytelling",
"Program lead",
"At risk",
"Continue"
],
[
"Data and reporting",
"Analytics",
"On track",
"Tighten metric definitions"
],
[
"Field adoption",
"Operations",
"Watch",
"Add weekly office hours"
]
]
}
},
{
"id": "s5",
"section": "Plan",
"layout": "text-2x",
"title": "Execution Timeline",
"type": "timeline",
"timeline": {
"name": "Data storytelling execution path",
"description": "Major milestones for Civic Data Lab.",
"events": [
{
"when": "Jul",
"what": "Baseline",
"description": "Confirm current state, owners, and constraints."
},
{
"when": "Aug",
"what": "Pilot",
"description": "Run a narrow pilot with visible success criteria."
},
{
"when": "Sep",
"what": "Scale",
"description": "Expand the approach after risk review."
},
{
"when": "Oct",
"what": "Embed",
"description": "Move reporting and routines into steady-state operations."
}
]
}
},
{
"id": "s99-regions",
"section": "Operating model",
"layout": "number-3x",
"title": "Operating Model",
"top:left": {
"metric": {
"value": "11 days",
"label": "Primary signal",
"description": "Show regional patterns with maps, charts, and concise interpretation",
"trend": "down"
}
},
"top:center+right": {
"text": [
"Civic Data Lab should focus the next cycle on ",
{
"text": "show regional patterns with maps, charts, and concise interpretation",
"bold": true,
"color": "#B45309"
},
" while making the operating tradeoffs clear to data storytelling stakeholders."
]
},
"middle+bottom:left": {
"quote": {
"text": "The path is workable if we keep the metric simple and the decision owner visible.",
"attribution": "Data storytelling working group",
"source": "Stakeholder interview"
}
},
"middle+bottom:center+right": {
"table": {
"columns": [
"Workstream",
"Owner",
"Status",
"Decision"
],
"rows": [
[
"Data storytelling",
"Program lead",
"At risk",
"Continue"
],
[
"Data and reporting",
"Analytics",
"On track",
"Tighten metric definitions"
],
[
"Field adoption",
"Operations",
"Watch",
"Add weekly office hours"
]
]
}
},
"notes": "Use this slide to slow the conversation down around ownership and operating rhythm."
},
{
"id": "s99-blocks",
"section": "Evidence",
"layout": "number-4x",
"title": "Evidence Pack",
"blocks": [
{
"chart": {
"type": "dot-plot-3x",
"data": {
"columns": [
"Quarter",
"Current",
"Baseline"
],
"rows": [
[
"Q1",
17,
14
],
[
"Q2",
21,
16
],
[
"Q3",
24,
18
],
[
"Q4",
28,
20
]
]
}
}
},
{
"quote": {
"text": "Teams already know where the friction is; the deck makes the sequence of choices explicit.",
"attribution": "Program sponsor",
"source": "Planning interview"
}
},
{
"metric": {
"value": "91%",
"label": "Expected improvement",
"unit": "%",
"delta": "+6 pts",
"trend": "up"
}
}
]
},
{
"id": "s99-image",
"section": "Context",
"layout": "image-2x",
"title": "Field Context",
"type": "image",
"image": {
"src": "asset:supporting-photo",
"alt": "Data storytelling context photo for Civic Data Lab",
"title": "Data storytelling context"
},
"notes": "Use the image as context, not decoration."
},
{
"id": "s99-code",
"section": "Appendix",
"layout": "code-1x",
"title": "Decision Rule",
"code": {
"source": "const score = urgency * confidence;\nif (score >= threshold) {\n routeToSponsor(workstream);\n} else {\n keepInWeeklyReview(workstream);\n}",
"language": "ts",
"filename": "data-storytelling-atlas-rule.ts"
},
"hidden": false
},
{
"id": "s10",
"section": "Close",
"layout": "list-6x",
"title": "Decision and Follow Through",
"items": [
[
"Commit to ",
{
"text": "show regional patterns with maps, charts, and concise interpretation",
"bold": true
}
],
{
"text": "Name the sponsor and operating owner.",
"description": "Keep one person accountable for momentum."
},
{
"text": "Publish the progress rhythm.",
"description": "Use the same metric definitions every week."
},
{
"text": "Return with proof.",
"description": "Bring customer, employee, resident, or learner evidence into the next review."
}
]
}
],
"organization": [
{
"id": "civic-data-lab",
"name": "Civic Data Lab",
"logo": "asset:brand-logo",
"domain": "civic-data-lab.example",
"email": "hello@civic-data-lab.example",
"tagline": "Show regional patterns with maps, charts, and concise interpretation",
"role": "primary",
"socials": {
"x": "@civic-data-lab"
}
},
{
"id": "civic-data-lab-partner",
"name": "Data Storytelling Partner Office",
"role": "partner",
"domain": "partner-civic-data-lab.example"
}
],
"speaker": {
"id": "speaker",
"name": "Samira Okafor",
"title": "Chief of Staff",
"organizationId": "civic-data-lab",
"bio": "Leads data storytelling planning for Civic Data Lab.",
"socials": {
"x": "@civic-data-lab-speaker"
}
},
"author": "OPF Example Generator",
"takeaway": "Show regional patterns with maps, charts, and concise interpretation",
"duration": 31,
"tags": [
"design-and-media",
"data-storytelling",
"sell",
"authoritative",
"dense"
],
"assets": {
"brand-logo": {
"src": "./assets/civic-data-lab-logo.svg",
"alt": "Civic Data Lab logo",
"mediaType": "image/svg+xml"
},
"brand-logo-light": {
"src": "./assets/civic-data-lab-logo-light.svg",
"alt": "Civic Data Lab light logo",
"mediaType": "image/svg+xml"
},
"brand-icon": {
"src": "./assets/civic-data-lab-icon.svg",
"alt": "Civic Data Lab icon",
"mediaType": "image/svg+xml"
},
"cover-bg": {
"src": "./assets/civic-data-lab-cover-4.jpg",
"alt": "Data storytelling background image",
"mediaType": "image/jpeg"
},
"supporting-photo": {
"src": "./assets/civic-data-lab-field-photo.jpg",
"alt": "Data storytelling field context",
"mediaType": "image/jpeg"
},
"demo-video": {
"src": "./media/civic-data-lab-demo.mp4",
"title": "Data storytelling walkthrough",
"mediaType": "video/mp4"
},
"metric-data": {
"src": "./data/data-storytelling-atlas.csv",
"format": "csv",
"title": "Data Storytelling Atlas data"
},
"watermark": {
"src": "./assets/civic-data-lab-watermark.png",
"alt": "Civic Data Lab watermark",
"mediaType": "image/png"
}
},
"extensions": {
"example": {
"folder": "design-and-media",
"density": "dense",
"scenario": "data-storytelling-atlas",
"generatedBy": "scripts/generate-example-suite.mjs"
}
},
"catalogs": {
"narratives": {
"source": [
"pkg:@openpresentation/gallery/narratives",
"https://www.pptx.gallery/narratives"
],
"records": [
{
"$schema": "https://openpresentation.org/schema/opf-narrative/v1",
"id": "data-storytelling-atlas-arc",
"name": "Data Storytelling Decision Arc",
"summary": "A custom arc for Civic Data Lab.",
"beats": [
{
"id": "context",
"name": "Context",
"slideType": "text",
"layoutHint": "text-1x"
},
{
"id": "evidence",
"name": "Evidence",
"slideType": "chart",
"layoutHint": "chart-1x"
},
{
"id": "decision",
"name": "Decision",
"slideType": "list",
"layoutHint": "list-3x"
}
]
}
]
},
"themes": {
"records": [
{
"$schema": "https://openpresentation.org/schema/opf-theme/v1",
"id": "civic-data-lab-theme",
"name": "Civic Data Lab Working Theme",
"colorScheme": "black-and-white",
"fontScheme": "consolas",
"background": "#F8FAFC",
"tags": [
"data-storytelling",
"example"
]
}
]
},
"colorSchemes": {
"source": "https://www.pptx.gallery/color-schemes",
"records": [
{
"$schema": "https://openpresentation.org/schema/opf-color-scheme/v1",
"id": "civic-data-lab-signal",
"name": "Civic Data Lab Signal Palette",
"accent1": "#B45309",
"accent2": "#BE123C",
"accent3": "#6D28D9",
"accent4": "#0369A1",
"accent5": "#334155",
"accent6": "#F8FAFC",
"dark1": "#0F172A",
"dark2": "#334155",
"light1": "#FFFFFF",
"light2": "#F8FAFC",
"hyperlink": "#2563EB",
"followedHyperlink": "#7C3AED"
}
]
},
"fontSchemes": {
"source": "pkg:@openpresentation/gallery/font-schemes"
},
"layouts": {
"source": "https://www.pptx.gallery/layouts"
},
"chartTypes": {
"source": "https://www.pptx.gallery/chart-types"
},
"languages": {
"source": "https://www.pptx.gallery/languages"
},
"audiences": {
"source": "https://www.pptx.gallery/audiences"
},
"purposes": {
"source": "https://www.pptx.gallery/purposes"
},
"tones": {
"source": "https://www.pptx.gallery/tones"
},
"socialPlatforms": {
"source": "https://www.pptx.gallery/social-platforms"
}
}
}