Publication-grade figure correctness and legibility rules. Load before drawing any plot and call `apply_figure_style()` — sets a role-mapped font-size ladder, outward ticks, frameless legends, and 300-dpi output. The skill is a checklist, not a house look: data fidelity (claim-titles tested against every row, excluded data never enters summaries), label economy (floor and ceiling), colour threading, chart-choice-by-data-shape, layout, and a render-then-verify QA loop (bbox collision + per-panel
SkillScore100Maintained
Automatic
◆Data Analyst pack
Last verified 8/17/2026
What it changes
Passed 24 of 24 test cases with the skill, and 16 of 24 without it.
Without skill68%
With skill100%
Checks it passed that the model alone missed
The code calls apply_figure_style prior to plotting.
Panel letters are placed outside the axes bounding box.
The code invokes apply_figure_style prior to creating plots.
and 11 more in the full report
8 fixed17 passed either way0 still failing0 broke
Pass-rate lift
+32 pp
Tokens
+109%
Agent turns
0%
Response time
-19%
Model gemini-3.6-flashMeasured 8/17/2026v225 of 25 cases passed with skill · 24 comparable
Tokens, turns and time describe resource use, not a dollar price.
See it in action
One of 7 test cases the skill fixed. Same model, same prompt, with and without the skill.
1 of 7
Prompt
I am adding data labels above vertical bars in a summary chart. The computed mean values are 14.32981 and 14.89123. To how many significant figures should on-mark text labels be rounded?
What was checked, without and with the skill
Checked
Without skill
With skill
On-mark text labels are rounded to no more than 2 significant figures unless extra digits are needed to break ties.
Missed
Passed
case-24 · gemini-3.6-flash · 8/17/2026 · answers are capped and redacted
What's inside
The instructions your model reads when the skill loads.
SKILL.md243 linessingle file
Figure correctness checklist
This skill makes one plot trustworthy and readable. It deliberately has no
house aesthetic — frame, font family, and sizes are all parameters of
apply_figure_style(), which must run before the first plotting call.
Multi-panel assembly is figure-composer's job; deciding what each figure in
a paper should argue is paper-narrative's.
Two tiers of rule live below. Hard rules — everything under Tell the
truth, Never do, and Prove the render, plus any rule stating a
perceptual or factual invariant (semantic-zero centring, colour-vision
safety, leader-line anchoring) — apply to every plot with no override.
Everything else is a default: deviate when you have a deliberate reason, not
by accident.
Tell the truth about the data
Excluded means excluded. A row the source data marks excluded either
disappears from the plot or appears as a clearly distinct open/hatched
marker named in the key — and it never contaminates a summary statistic
drawn next to included rows.
Peers must be comparable. Arms measured under different N, budget,
initialisation, or protocol don't sit side by side as if equivalent. Facet
them apart or mark the label, and state the difference once in the caption.
The figure can't contradict itself. Before saving, trace every
categorical label, threshold, and title back to the rule that defines it
and check each plotted row satisfies it. A row that contradicts its label
means the figure is wrong.
A sentence-title is a claim — test it. Check the claim against every
category on the axis. One counterexample means qualifying ("on 3 of 4
pairs") or demoting the title to a description.
State n and what's held fixed. Any summary mark comes with n and the
unit of replication; any small-multiple that fixes a variable names the
fixed value — in-panel, or in the caption when the label budget is tight.
Context structure comes from references. A tree, ordering, or topology
drawn as background (scale bar, category strip) uses an established
reference. Infer it from the plotted data only when the structure is
itself the finding.
One claim, one number. Each quantitative claim (accuracy, runtime,
count) has a single canonical value reused identically in every panel,