Agent skill · Data & Analytics

academic-plotting

Generates publication-quality figures for ML papers from research context. Given a paper section or description, extracts system components and relationships to generate architecture diagrams via Gemini. Given experiment results or data, auto-selects chart type and generates data-driven figures via matplotlib/seaborn. Use when creating any figure for a conference paper.

OpenRaisergithub.com/OpenRaiserGitHub ↗
claude-codeMIT
Install
npx skills add OpenRaiser/NanoResearch --skill academic-plotting --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 4
SKILL.md size: 20 KB
Bundled scripts: none
Version: 1.0.0
Declared author: Orchestra Research
Requires: [matplotlib>=3.8.0, seaborn>=0.13.0, numpy, google-genai>=1.0.0]
Path: skills/vendor-ai-research/academic-plotting/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 1,480
Language: Python

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

Review
written from the skill's own SKILL.md · Aug 5, 2026

What it does

Generates publication-quality figures for ML papers by transforming research context into two types of visuals: architecture diagrams using Gemini and data-driven figures using matplotlib/seaborn. It guides when to use each workflow and provides a structured process for extracting entities and relationships or data, then producing diagrams or charts accordingly.

How it works

  • For diagrams (Workflow 1): reads the research context (paper section, description) to identify components and relationships, then uses Gemini to generate architecture/system diagrams. It prescribes a multistep prompt structure with sections like FRAMING, VISUAL STYLE, COLOR PALETTE, LAYOUT, CONNECTIONS, and CONSTRAINTS, and includes a generation script template that handles Gemini API interaction, prompts, and three attempts.
  • For data charts (Workflow 2): reads experiment results or data, determines chart type automatically, and generates data-driven figures with matplotlib/seaborn. It provides a publication-styled template, a chart-type decision guide, and a workflow to prepare data, apply styling, highlight the paper’s method, and export outputs (PDF and PNG). It also specifies a saving convention for scripts and emphasizes reproducibility.
  • It enforces dependency requirements (matplotlib>=3.8.0, seaborn>=0.13.0, numpy, google-genai>=1.0.0) and directs to save generation scripts under a figures directory with naming like gen_fig_<name>.py.

When to use it

  • Use the Diagram workflow when the figure is an architecture, system design, or workflow diagram requiring boxes, arrows, and labeled components.
  • Use the Data Figures workflow when the figure conveys numerical results such as training curves, ablations, or comparisons, where axes and precise data presentation are required.

What it can touch

  • Tools: claude-code (declared tool)
  • Libraries and formats referenced: matplotlib, seaborn, numpy, google-genai, Gemini (via API key GEMINI_API_KEY), and Python script templates for figure generation.

Caveats

  • License: MIT
  • Declared dependencies and environment setup required (e.g., GEMINI_API_KEY) to generate Gemini diagrams.
  • The workflow emphasizes adherence to specific prompt structure for Gemini and requires three generation attempts for diagrams, with explicit prompts and layout constraints.
From the SKILL.md

# Academic Plotting for ML Papers Generate publication-quality figures for ML/AI conference papers. Two distinct workflows: 1. **Diagram figures** (architecture, system design, workflows, pipelines) — AI image generation via Gemini 2. **Data figures** (line charts, bar charts, scatter plots, heatmaps, ablations) — matplotlib/seaborn ## When to Use Which Workflow | Figure Type | Tool | Why | |-------------|------|-----| | Architecture / system diagram | Gemini (Workflow 1) | Complex spatial layouts with boxes, arrows, labels | | Workflow / pipeline / lifecycle | Gemini (Workflow 1) | Multi-step processes with connections | | Bar chart, line plot, scatter | matplotlib (Workflow 2) | Precise numerical data, reproducible | | Heatmap, confusion matrix | matplotlib/seaborn (Workflow 2) | Structured grid data | | Ablation table as chart | matplotlib (Workflow 2) | Grouped bars or line comparisons | | Pie / donut chart | matplotlib (Workflow 2) | Proportional data (use sparingly in ML papers) | | Training curves | matplotlib (Workflow 2) | Loss/accuracy over steps/epochs | **Rule of thumb**: If the figure has numerical axes, use matplotlib. If the figure has boxes and arrows, use Gemini. -

What's inside
Steps it walks through
  1. When to Use Which Workflow
  2. Step 0: Context Analysis & Extraction
  3. Extraction Workflow
  4. Auto-Detection Examples
  5. Workflow 1: Architecture & System Diagrams (AI Image Generation)
  6. Visual Styles
  7. Curated Color Palettes
  8. Checklist
  9. Prompt Structure (6 Sections)
  10. Generation Script Template
  11. Key Rules
  12. Workflow 2: Data-Driven Charts (matplotlib/seaborn)
  13. Chart Type Decision Guide
  14. Publication Styling Template
Ships with 3 files
  • references/data-visualization.md
  • references/diagram-generation.md
  • references/style-guide.md
More from NanoResearch
All skills →
About this skill
What does the academic-plotting skill do?

Generates publication-quality figures for ML papers from research context. Given a paper section or description, extracts system components and relationships to generate architecture diagrams via Gemini. Given experiment results or data, auto-selects chart type and generates data-driven figures via matplotlib/seaborn. Use when creating any figure for a conference paper.

How do I install it?

Run `npx skills add OpenRaiser/NanoResearch --skill academic-plotting --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From OpenRaiser/NanoResearch, a repository with 1,480 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going