# Alterlab Figure QA

> Verify publication figures with a render-then-check QA pass — data-fidelity against every underlying row, axis/label floor-and-ceiling legibility, bounding-box collision detection for overlapping text/markers, and 300-dpi print-readiness. Use when proofing or auditing a finished figure for correctness and print quality, catching mislabeled or overlapping elements, or confirming a plot faithfully represents its data before submission. For CREATING the plot prefer alterlab-matplotlib (or alterlab-seaborn / alterlab-plotly); for multi-panel publication layout prefer alterlab-scientific-viz; for schematic diagrams prefer alterlab-scientific-schematics. Part of the AlterLab Academic Skills suite.

- Skill: `alterlab-ieu/alterlab-figure-qa` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add alterlab-ieu/alterlab-figure-qa`
- Raw SKILL.md: https://api.skillmd.com/api/skills/alterlab-ieu/alterlab-figure-qa/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- License: MIT
- Author: AlterLab-IEU (https://skillmd.com/u/alterlab-ieu)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/alterlab-ieu/alterlab-figure-qa

---


# Figure QA (render-then-verify)

## Overview

A finished figure can look fine and still be wrong: a series plotted from the wrong column,
a legend covering a data point, tick labels clipped at the axis edge, or a 150-dpi export that
pixelates in print. This skill is a **render-then-verify** QA pass — it re-renders the figure
and checks it against a concrete, measurable checklist before submission. It **complements**
the plotting skills (which *make* figures); it does not create plots.

## When to Use This Skill

Use this skill when the user wants to:
- **Proof a finished figure** for correctness and print-readiness before submission.
- Confirm the plot **faithfully represents its data** (every row/series accounted for).
- Catch **overlapping or clipped** labels, legends, and markers.
- Verify **resolution / export** settings (e.g. 300 dpi, vector where required).

### Does NOT Trigger

| Scenario | Use instead |
|----------|-------------|
| Create/plot the figure in the first place | `alterlab-matplotlib` / `alterlab-seaborn` / `alterlab-plotly` |
| Lay out a multi-panel publication figure | `alterlab-scientific-viz` |
| Draw a schematic / diagram | `alterlab-scientific-schematics` |
| Build an infographic | `alterlab-infographics` |

## Core Capabilities

### 1. Data-fidelity check

Verify the rendered marks against **every row** of the source data: series count, point count
per series, min/max/range on each axis, and that categorical labels match the data's
categories. Flag any series plotted from the wrong column or a silently dropped subset.

### 2. Label floor-and-ceiling legibility

Check that tick labels, axis titles, and annotations are within legibility bounds — a **font
floor** (nothing below the journal's minimum pt at final size) and a **ceiling** (titles not
so large they crowd the panel) — and that nothing is clipped at the axis boundary.

### 3. Bounding-box collision detection

Compute the bounding boxes of text, legend, and markers and detect **overlaps/collisions**
(legend over data, colliding labels, out-of-axes text). Report each collision with its
location so it can be nudged.

### 4. Resolution and export QA

Confirm the export meets the target: **≥300 dpi** for raster, vector format where the venue
requires it, correct figure dimensions/column width, and embedded fonts. Fail the check if the
raster resolution is below the floor.

### 5. Report

Emit a pass/fail checklist per criterion with the specific offending element(s), so the fix is
actionable. See `references/figure_qa_checklist.md` for the full rubric and Matplotlib bbox
recipes.

## Resources

- `references/figure_qa_checklist.md` — the full QA rubric, Matplotlib renderer/bbox recipes
  for collision detection, dpi/vector export checks, and journal legibility floors. Loaded on
  demand.

Part of the AlterLab Academic Skills suite.

