Icarus Figures produces publication-grade figures for scientific papers — reproducible matplotlib/seaborn data figures and original TikZ method/framework/architecture figures, held to a four-axis quality bar (depth · elegance · unimpeachable · visible-gap) and exported as editable PDF+PNG+SVG with a runnable critique gate. Use this whenever a figure is destined for a paper, journal, conference submission, thesis, or report — making a plot/chart publication- or journal-ready, building a method...
Scanned 9/6/2026
Install to Claude Code
npx -y skills add TAO-QKV/paper-figures --skill icarus-figures --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Icarus Figures?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/tao-qkv-icarus-figures-icarus-figures)More formats (shields.io, HTML) on the badges page.
---
name: icarus-figures
description: Icarus Figures produces publication-grade figures for scientific papers — reproducible matplotlib/seaborn data figures and original TikZ method/framework/architecture figures, held to a four-axis quality bar (depth · elegance · unimpeachable · visible-gap) and exported as editable PDF+PNG+SVG with a runnable critique gate. Use this whenever a figure is destined for a paper, journal, conference submission, thesis, or report — making a plot/chart publication- or journal-ready, building a method/architecture/framework diagram or 技术路线图 (the hero figure a paper opens with), a schematic or workflow figure, or cleaning up a matplotlib/seaborn/TikZ figure that currently looks like a homework plot. Trigger even when the user never says "publication": if the figure goes into a written scientific document, this skill applies.
---
# Icarus Figures
Turn a dataset + a claim into a **publication-grade figure** — one a top-journal editor accepts with no revision request. Default stack: **matplotlib/seaborn for data figures, original TikZ for hero/method figures**, both reproducible (script + data file), exported as PDF + PNG + SVG.
## First read
Open `references/figure-cookbook.md` and work in this order:
1. **§0b (the quality bar)** — the four axes (Depth · Elegance · Unimpeachable · Visible gap). Internalize this *before* plotting; it is the acceptance test, not an afterthought.
2. **§0a (Figure Contract)** — write the one-line `core_claim` + hero panel + what stats go on the figure, before any code.
3. **§0 style preset** — `from _style import paper_style, save` (the preset lives in `scripts/_style.py`). Never hand-edit rcParams per figure.
4. **§A archetypes A1–A13** — pick the matching template (time series+CI, sorted bar, grouped bar, residual, heatmap, scatter+fit, Pareto, tornado, confusion, phase, network), paste, swap the data path + labels, run.
## For a hero / method / framework figure (the one that carries the paper)
**Read `references/framework-figures.md`** — the deep-dive, with **five** compilable heroes to
paste from (P1 pipeline, P2 paradigm-swimlanes, + T4 graphical-model / data-tensor / matrix-fit),
the borrowable TikZ techniques, and curated journal-grade resources.
The rule to internalize first: **never a generic boxes-and-arrows flowchart** — embed the *real
method object* (a distribution, a before/after scatter, a decision region), not a text label.
Route through the cookbook: **§I** composition paradigms P1–P6 → **§J** craft spec → **§K**
original standalone TikZ (compiled to PDF, `\includegraphics`, zero compile risk). framework-figures.md
walks all three with worked examples.
## Hard rules (non-negotiable)
- **Reproducible only**: every figure is generated by a committed script that reads data from a file path. **No inline data > 20 rows. No AI-generated images** (unreproducible).
- **Three-format vector**: `save()` writes PDF + PNG + SVG (text stays editable in SVG/PDF). Never ship a 72-dpi PNG.
- **Style preset, once**: call `paper_style(...)` at the top; do not tweak rcParams per script.
- **Colorblind + grayscale safe**: use the palette + redundant marker/linestyle so every series survives a B&W print and deuteranopia.
- **Units + N + uncertainty on the figure**: axis labels carry units; N annotated; CI band / error bars shown (§0b axis 3).
- **Acceptance test (run it, don't eyeball it)**: before declaring done, run the gate
`python scripts/critique.py scripts/figN_<name>.py` — it enforces the §F checklist + §G
anti-patterns mechanically (must report **no FAIL**) and prints the four judgment prompts.
Then answer the four §0b axes by hand using `references/figure-critique.md` (the mechanical
floor is defense; the four judgment ticks are the offense). A figure that merely "plots
correctly" — or merely passes the script — is not done.
## Optional front-ends / references
- **§M Origin** — allowed only behind the M1–M6 guardrails (same-source CSV, journal .otp template, vector three-format, reproducible matplotlib fallback for key figures). Hero figures never go through Origin.
- **§L external template library** — if `<TEMPLATE_LIB>` is set in `CLAUDE.md`, use it as a *design reference* (imitate composition/palette/chart-type, redraw original); never paste foreign output into the paper.
## Captions
After the figure passes the critique gate (`references/figure-critique.md`), write the caption with `references/caption-and-quality.md` — the caption states the **conclusion**, not "Figure shows X"; reference figures in text as "as in Fig. 3", never "the figure below".
## Output locations
- scripts → `scripts/figN_<short-name>.py` (or `.tex` for TikZ)
- figures → `outputs/figures/figN_<short-name>.{pdf,png,svg}`
- register each in `outputs/figures/figure_manifest.csv` (id, path, claim, source data, generation script).
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!