Chart Interpretation
| Property |
Value |
| Domain |
Data Analytics |
| Category |
Visual Analysis & Insight Extraction |
| Components |
SKILL.md + chart-interpretation.instructions.md + interpret.prompt.md |
| Depends |
data-visualization (chart type knowledge), data-analysis (validation) |
Overview
The reverse of data visualization. Instead of data → chart, this skill reads chart → insights → narrative. It extracts meaning from existing charts (screenshots, images, HTML, Power BI reports) and produces structured analysis adapted to the target audience.
The cardinal rule: read what the chart says, then read what it doesn't say. The visible data points tell one story; the missing context, truncated axes, and suppressed categories tell another.
Module 1: Chart Type Recognition
Identify the chart type to determine the correct reading strategy.
| Chart Type |
Key Visual Features |
Reading Strategy |
| Bar / Column |
Rectangular bars, one axis categorical |
Compare bar lengths, check sort order |
| Horizontal Bar |
Bars extend left-to-right |
Rank comparison, read labels first |
| Line |
Connected points over axis |
Follow trend direction, find inflections |
| Area |
Filled region under line |
Volume over time, stacking if multiple |
| Pie / Donut |
Circular segments |
Part-to-whole, count segments, check % |
| Scatter |
Points in x-y space |
Look for clusters, outliers, trend line |
| Bubble |
Scatter with size encoding |
Three dimensions: x, y, size |
| Histogram |
Bars touching, x is continuous |
Distribution shape, skew, outliers |
| Heatmap |
Color grid |
Pattern density, row-column relationships |
| Treemap |
Nested rectangles |
Hierarchical proportions |
| Sankey |
Flow ribbons between stages |
Volume flow, biggest paths |
| Box Plot |
Box + whiskers |
Median, IQR, outlier dots |
| Network |
Nodes + edges |
Clusters, hubs, isolates |
| Violin |
Mirrored density curves |
Distribution shape + density |
Module 2: Visual Decoding
Extract data from visual encodings:
| Encoding |
What to Read |
Precision Level |
| Position (axis) |
Exact values from gridlines/labels |
High (if labeled) |
| Length (bar) |
Relative magnitude between items |
High |
| Color hue |
Category membership |
Categorical only |
| Color intensity |
Value magnitude in sequential scheme |
Medium |
| Size (area) |
Third variable (bubble, treemap) |
Low (area perception is poor) |
| Angle (pie) |
Proportion (poor human accuracy) |
Low |
| Slope (line) |
Rate of change |
Medium |
Module 3: Pattern Detection
| Pattern |
What to Look For |
Significance |
| Trend |
Consistent upward/downward direction |
Growth, decline, momentum |
| Inflection |
Direction change point |
Market shift, intervention effect |
| Plateau |
Flat region after growth/decline |
Saturation, stabilization |
| Cluster |
Groups of points in scatter/network |
Natural segments, sub-populations |
| Outlier |
Points far from the main group |
Anomaly, error, or special case |
| Periodicity |
Repeating pattern at intervals |
Seasonality, weekly cycle |
| Gap |
Missing data or discontinuity |
Data quality issue or deliberate omission |
| Skew |
Asymmetric distribution shape |
Non-normal population, concentration |
| Dominance |
One item >> all others |
Power law, market leader, outlier |
Module 4: Misleading Visual Detection
Check every chart for these deceptive patterns:
| Deception |
How to Detect |
Actual Impact |
| Non-zero baseline |
Y-axis starts above 0 |
Exaggerates differences (sometimes 2-5x) |
| Truncated axis |
Axis range excludes data or starts mid-range |
Hides context, magnifies small changes |
| Dual axes |
Two Y-axes with different scales |
Implies correlation where none may exist |
| 3D effects |
Perspective distortion on bars/pies |
Area comparison becomes inaccurate |
| Cherry-picked range |
Time window starts/ends at convenient point |
Hides contrary trend outside window |
| Suppressed categories |
"Other" aggregates significant items |
Hides important segments |
| Area distortion |
Variable-width bars, non-proportional icons |
Size doesn't match value |
| Missing denominator |
Percentages without base size |
50% of 10 ≠ 50% of 10,000 |
| Reversed axis |
Values increase downward or rightward |
Readers misread direction |
Module 5: Structural Element Reading
Always read these elements before interpreting the data:
| Element |
What to Extract |
If Missing |
| Title |
Author's intended takeaway |
Chart lacks stated purpose |
| Subtitle |
Time range, filter condition, context |
Context must be inferred |
| Axes labels |
What variables are plotted |
Interpretation becomes guesswork |
| Legend |
Category-to-color mapping |
Color meaning unclear |
| Annotations |
Author-highlighted insights |
No guided reading |
| Data source |
Where the data came from |
Credibility unknown |
| Date/time |
When data was collected/reported |
Freshness unknown |
Module 6: Narrative Extraction
Convert visual observations into prose at three audience levels:
Executive Summary (30 seconds)
3 bullets maximum:
• [Primary insight — the main takeaway]
• [Supporting evidence — the strongest proof point]
• [Recommendation or implication — what to do about it]
Detailed Analysis (2-3 minutes)
The chart shows [chart type] plotting [X variable] against [Y variable]
for [time range / scope].
Primary finding: [Main pattern or insight with specific numbers]
Supporting observations:
- [Pattern 1 with evidence]
- [Pattern 2 with evidence]
- [Anomaly or exception worth noting]
Context and caveats:
- [What the chart doesn't show]
- [Potential biases or limitations]
- [Comparison to benchmarks if available]
Talking Points (presenter-ready)
"What you're seeing here is [explain the main pattern in plain language]."
"The key number to focus on is [highlight], which tells us [implication]."
"What's interesting is [surprise or anomaly] — this suggests [hypothesis]."
"The action item here is [recommendation]."
Module 7: Confidence Rating
Rate interpretation confidence honestly:
| Level |
When |
Signal to User |
| High |
Clear labels, clean data, familiar chart type |
"The chart clearly shows..." |
| Medium |
Some inference needed (unlabeled, partial data) |
"Based on visual estimation..." |
| Low |
Ambiguous visual, missing context, blurry image |
"This appears to show, but verify..." |
Module 8: Follow-Up Recommendations
After interpreting, suggest what would strengthen the analysis:
| Suggestion Type |
Example |
| Missing variable |
"Add cost data to see if revenue growth is profitable" |
| Time extension |
"Extend to 24 months to confirm the seasonal pattern" |
| Segmentation |
"Break this down by region to check for Simpson's Paradox" |
| Alternative chart |
"A scatter plot would better show the correlation" |
| Baseline addition |
"Add a target line to show performance vs. plan" |
Module 9: CSAR Loop Integration
Use the Dialog Engineering CSAR Loop for structured chart reading:
| Phase |
Action |
| Clarify |
What chart type? What variables? What time range? |
| Summarize |
State the main finding in one sentence |
| Act |
Extract specific data points, patterns, anomalies |
| Reflect |
What's missing? What would I want to see next? |
Anti-Patterns
| Anti-Pattern |
Problem |
Fix |
| Describing, not interpreting |
"This is a bar chart" (no insight) |
Say what the bars MEAN, not what they ARE |
| Ignoring the title |
Missing the author's intended message |
Read title first -- it's the thesis |
| Over-precision from visual |
"Revenue is exactly $4,237,892" |
Estimate from visual: "roughly $4.2M" |
| Missing bias check |
Accepting the chart at face value |
Always scan for misleading elements |
| Single-lens reading |
Only one interpretation offered |
Provide primary + alternative reading |
1---2name: chart-interpretation3description: Read any chart (image, HTML, screenshot) and extract insights, patterns, anomalies, bias, and narrative -- the reverse of visualization4---5
6# Chart Interpretation
7
8
9| Property | Value |
10| ------------ | --------------------------------------------------------------------- |
11| **Domain** | Data Analytics |
12| **Category** | Visual Analysis & Insight Extraction |
13| **Components** | SKILL.md + chart-interpretation.instructions.md + interpret.prompt.md |
14| **Depends** | data-visualization (chart type knowledge), data-analysis (validation) |
15
16## Overview
17
18The reverse of data visualization. Instead of data → chart, this skill reads chart → insights → narrative. It extracts meaning from existing charts (screenshots, images, HTML, Power BI reports) and produces structured analysis adapted to the target audience.
19
20The cardinal rule: **read what the chart says, then read what it doesn't say**. The visible data points tell one story; the missing context, truncated axes, and suppressed categories tell another.
21
22## Module 1: Chart Type Recognition
23
24Identify the chart type to determine the correct reading strategy.
25
26| Chart Type | Key Visual Features | Reading Strategy |
27| ---------------- | -------------------------------------- | ----------------------------------------- |
28| Bar / Column | Rectangular bars, one axis categorical | Compare bar lengths, check sort order |
29| Horizontal Bar | Bars extend left-to-right | Rank comparison, read labels first |
30| Line | Connected points over axis | Follow trend direction, find inflections |
31| Area | Filled region under line | Volume over time, stacking if multiple |
32| Pie / Donut | Circular segments | Part-to-whole, count segments, check % |
33| Scatter | Points in x-y space | Look for clusters, outliers, trend line |
34| Bubble | Scatter with size encoding | Three dimensions: x, y, size |
35| Histogram | Bars touching, x is continuous | Distribution shape, skew, outliers |
36| Heatmap | Color grid | Pattern density, row-column relationships |
37| Treemap | Nested rectangles | Hierarchical proportions |
38| Sankey | Flow ribbons between stages | Volume flow, biggest paths |
39| Box Plot | Box + whiskers | Median, IQR, outlier dots |
40| Network | Nodes + edges | Clusters, hubs, isolates |
41| Violin | Mirrored density curves | Distribution shape + density |
42
43## Module 2: Visual Decoding
44
45Extract data from visual encodings:
46
47| Encoding | What to Read | Precision Level |
48| ---------------- | ------------------------------------- | ------------------- |
49| Position (axis) | Exact values from gridlines/labels | High (if labeled) |
50| Length (bar) | Relative magnitude between items | High |
51| Color hue | Category membership | Categorical only |
52| Color intensity | Value magnitude in sequential scheme | Medium |
53| Size (area) | Third variable (bubble, treemap) | Low (area perception is poor) |
54| Angle (pie) | Proportion (poor human accuracy) | Low |
55| Slope (line) | Rate of change | Medium |
56
57## Module 3: Pattern Detection
58
59| Pattern | What to Look For | Significance |
60| ---------------- | --------------------------------------- | -------------------------------------- |
61| **Trend** | Consistent upward/downward direction | Growth, decline, momentum |
62| **Inflection** | Direction change point | Market shift, intervention effect |
63| **Plateau** | Flat region after growth/decline | Saturation, stabilization |
64| **Cluster** | Groups of points in scatter/network | Natural segments, sub-populations |
65| **Outlier** | Points far from the main group | Anomaly, error, or special case |
66| **Periodicity** | Repeating pattern at intervals | Seasonality, weekly cycle |
67| **Gap** | Missing data or discontinuity | Data quality issue or deliberate omission |
68| **Skew** | Asymmetric distribution shape | Non-normal population, concentration |
69| **Dominance** | One item >> all others | Power law, market leader, outlier |
70
71## Module 4: Misleading Visual Detection
72
73Check every chart for these deceptive patterns:
74
75| Deception | How to Detect | Actual Impact |
76| -------------------------- | ---------------------------------------------------------- | -------------------------------------- |
77| **Non-zero baseline** | Y-axis starts above 0 | Exaggerates differences (sometimes 2-5x)|
78| **Truncated axis** | Axis range excludes data or starts mid-range | Hides context, magnifies small changes |
79| **Dual axes** | Two Y-axes with different scales | Implies correlation where none may exist|
80| **3D effects** | Perspective distortion on bars/pies | Area comparison becomes inaccurate |
81| **Cherry-picked range** | Time window starts/ends at convenient point | Hides contrary trend outside window |
82| **Suppressed categories** | "Other" aggregates significant items | Hides important segments |
83| **Area distortion** | Variable-width bars, non-proportional icons | Size doesn't match value |
84| **Missing denominator** | Percentages without base size | 50% of 10 ≠ 50% of 10,000 |
85| **Reversed axis** | Values increase downward or rightward | Readers misread direction |
86
87## Module 5: Structural Element Reading
88
89Always read these elements before interpreting the data:
90
91| Element | What to Extract | If Missing |
92| ---------------- | -------------------------------------- | --------------------------------------- |
93| **Title** | Author's intended takeaway | Chart lacks stated purpose |
94| **Subtitle** | Time range, filter condition, context | Context must be inferred |
95| **Axes labels** | What variables are plotted | Interpretation becomes guesswork |
96| **Legend** | Category-to-color mapping | Color meaning unclear |
97| **Annotations** | Author-highlighted insights | No guided reading |
98| **Data source** | Where the data came from | Credibility unknown |
99| **Date/time** | When data was collected/reported | Freshness unknown |
100
101## Module 6: Narrative Extraction
102
103Convert visual observations into prose at three audience levels:
104
105### Executive Summary (30 seconds)
106
107```
1083 bullets maximum:
109• [Primary insight — the main takeaway]
110• [Supporting evidence — the strongest proof point]
111• [Recommendation or implication — what to do about it]
112```
113
114### Detailed Analysis (2-3 minutes)
115
116```
117The chart shows [chart type] plotting [X variable] against [Y variable]
118for [time range / scope].
119
120Primary finding: [Main pattern or insight with specific numbers]
121
122Supporting observations:
123- [Pattern 1 with evidence]
124- [Pattern 2 with evidence]
125- [Anomaly or exception worth noting]
126
127Context and caveats:
128- [What the chart doesn't show]
129- [Potential biases or limitations]
130- [Comparison to benchmarks if available]
131```
132
133### Talking Points (presenter-ready)
134
135```
136"What you're seeing here is [explain the main pattern in plain language]."
137"The key number to focus on is [highlight], which tells us [implication]."
138"What's interesting is [surprise or anomaly] — this suggests [hypothesis]."
139"The action item here is [recommendation]."
140```
141
142## Module 7: Confidence Rating
143
144Rate interpretation confidence honestly:
145
146| Level | When | Signal to User |
147| -------- | ----------------------------------------------- | ---------------------------------------- |
148| **High** | Clear labels, clean data, familiar chart type | "The chart clearly shows..." |
149| **Medium** | Some inference needed (unlabeled, partial data) | "Based on visual estimation..." |
150| **Low** | Ambiguous visual, missing context, blurry image | "This appears to show, but verify..." |
151
152## Module 8: Follow-Up Recommendations
153
154After interpreting, suggest what would strengthen the analysis:
155
156| Suggestion Type | Example |
157| ----------------------- | ---------------------------------------------------------- |
158| Missing variable | "Add cost data to see if revenue growth is profitable" |
159| Time extension | "Extend to 24 months to confirm the seasonal pattern" |
160| Segmentation | "Break this down by region to check for Simpson's Paradox" |
161| Alternative chart | "A scatter plot would better show the correlation" |
162| Baseline addition | "Add a target line to show performance vs. plan" |
163
164## Module 9: CSAR Loop Integration
165
166Use the Dialog Engineering CSAR Loop for structured chart reading:
167
168| Phase | Action |
169| ------------ | ----------------------------------------------------- |
170| **Clarify** | What chart type? What variables? What time range? |
171| **Summarize**| State the main finding in one sentence |
172| **Act** | Extract specific data points, patterns, anomalies |
173| **Reflect** | What's missing? What would I want to see next? |
174
175## Anti-Patterns
176
177| Anti-Pattern | Problem | Fix |
178| ------------------------- | ------------------------------------------ | ---------------------------------------- |
179| Describing, not interpreting | "This is a bar chart" (no insight) | Say what the bars MEAN, not what they ARE|
180| Ignoring the title | Missing the author's intended message | Read title first -- it's the thesis |
181| Over-precision from visual | "Revenue is exactly $4,237,892" | Estimate from visual: "roughly $4.2M" |
182| Missing bias check | Accepting the chart at face value | Always scan for misleading elements |
183| Single-lens reading | Only one interpretation offered | Provide primary + alternative reading |