paper-figures

A method for turning table data, such as a CSV file or data table, into publication-ready scientific charts using Python and matplotlib. It creates both the chart image and the script used to make it.

In plain words
What is it for?
Use it to create scatter, line, bar, pie, bubble, distribution, and other numerical charts for papers or experiments.
Why use it?
It removes the need to manually build and format research figures while keeping the result reproducible.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/camusgit/evoquant/paper-figures
Any agent
npx skills add CamusGIT/EvoQuant --skill paper-figures
Clone the repo
git clone --depth 1 https://github.com/CamusGIT/EvoQuant

Made for: Claude Code, Codex.

Per session 208 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,917 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin 98% copy Near-identical to another mod in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00208 $0.03917
Opus 5 $0.00104 $0.01959
Sonnet 5 $0.00042 $0.00783
Haiku 4.5 $0.00021 $0.00392

Measured 3d ago against content hash d8f25b800bc6, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

paper-figures scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (scripts/validate_figure.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

This is a copy

98% identical to paper-figures — 6 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

EvoQuant/skills/paper-figures/SKILL.md · 275 lines

How it starts

The opening of the file, as written. The whole thing — 275 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Paper Figures

A structured approach to producing publication-ready chart figures (PNG) from tabular data plus a natural-language description, using matplotlib.

When to Use This Skill

  • User provides a CSV / dataframe / inline data and asks for a chart
  • User describes a target figure in words and wants it rendered
  • User mentions "figure", "plot", "chart", "visualize", "render" for a paper or experiment

Inputs and Output

Inputs the agent will receive:

  • A data source: CSV file path, JSON, or inline table.
  • A description: natural-language text specifying chart type, axes, title, colors, annotations, legend, scenarios, etc. Sometimes terse, sometimes a full paragraph. The description is the full specification — no reference image is provided.

Output (always):

  • A standalone Python script plot.py that:
    • Loads the data from the provided source
    • Renders the figure with matplotlib
    • Saves a PNG via plt.savefig(..., dpi=300, bbox_inches="tight")
  • The rendered plot.png next to it (the script is run and the PNG produced — do not stop at the script).

Verification artifacts (write when filesystem access is available):

  • figure-spec.md — the compact figure specification extracted before coding.
  • audit.md — the post-render audit checklist and any repairs made.
  • final-status.md — one visible status label: PASSED, PASSED_WITH_WARNINGS, REPAIRED, or FAILED_NEEDS_HANDOFF.

Output directory:

  • If the user specifies an output directory (e.g. "save to path/to/dir/"), write plot.py and plot.png inside that directory. Create the directory if it does not exist.
  • If no directory is given, write to the current working directory.
  • The two filenames are always plot.py and plot.png. Repeated runs on different inputs go to different directories, not different filenames — this keeps the script reference inside the PNG's neighbourhood stable and makes batch comparison easy.

Core Workflow

Step 1: Plan Figure        -> verify: description/data ambiguity handled
Step 2: Extract Spec       -> verify: figure-spec.md has all required fields
Step 3: Implement          -> verify: plot.py runs and plot.png exists
Step 4: Audit Figure       -> verify: chart matches spec, data, and description
Step 5: Repair or Finalize -> verify: final-status.md is honest

Read the full file on GitHub · 275 lines

Files

What ships with it

3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 275 lines · 208 tokens per session scan A d8f25b800bc6

Subscribe to this mod's changes

paper-figures is a skill published in the GitHub repository CamusGIT/EvoQuant (215 stars, last pushed 16d ago), licensed Apache-2.0. It adds 208 tokens to every session and 3,917 once invoked, about $0.0010 per session on Opus 5. A static security scan graded it A with 0 findings. It is 98% identical to paper-figures, differing in 6 lines, and is treated as a copy.

Related

Other skills, from other repositories

oma-scholar

Scholarly research companion using Knows sidecar spec (.knows.yaml). Generates, validates, reviews, queries, and compares structured research-paper sidecars, and fetches them from knows.academy. Use for academic literature search, survey synthesis, paper authoring assistance, and peer review with token-efficient…

first-fluke/oh-my-agent · 73 tokens

jupyter-live-kernel

Use a live Jupyter kernel for stateful, iterative Python execution via hamelnb. Load this skill when the task involves exploration, iteration, or inspecting intermediate results — data science, ML experimentation, API exploration, or building up complex code step-by-step. Uses terminal to run CLI commands against a…

graniet/kheish · 70 tokens

manim-explainer

Build reusable Manim explainers for technical concepts, graphs, system diagrams, and product walkthroughs, then hand off to the wider video stack if needed. Use when the user wants a clean animated explainer rather than a generic talking-head script.

TeamWiseFlow/xiaobei · 55 tokens

songsee

Generate spectrograms and audio feature visualizations (mel, chroma, MFCC, tempogram, etc.) from audio files via CLI. Useful for audio analysis, music production debugging, and visual documentation.

graniet/kheish · 42 tokens

labrat-operator

Use when operating a labrat lab with Codex: checking health, choosing the next phase prompt, supervising runtime cycles, auditing candidates, synthesizing recent evaluations, or writing checkpoint notes.

ProjectDXAI/labrat · 42 tokens

research-innovation-explorer

Build literature-grounded research-question candidate landscapes by collecting papers, generating A+B matrices, and dynamically reviewing combinations with traceable evidence, uncertainty, and next checks. Use when an AI agent needs to explore a field, screen research questions, compare paper combinations, inspect…

foryourhealth111-pixel/research-innovation-explorer · 70 tokens