PluginBench
Skill
Fail
Audit score 45

figure-generation

lingzhi227/agent-research-skills

Generate publication-quality scientific figures with matplotlib/seaborn using query expansion, code generation, and VLM visual feedback.

What is figure-generation?

Automates creation of research-paper figures (bar charts, line plots, heatmaps, training curves, ablation plots, etc.) through a three-phase pipeline: query expansion to specifications, iterative code generation with execution, and visual refinement. Use when you need to produce figures for academic papers.

  • Expands figure descriptions into detailed coding specifications
  • Generates and executes matplotlib/seaborn scripts with automatic retry on error
  • Provides visual feedback and refinement using VLM inspection
  • Outputs both PNG (300 DPI) and vector PDF formats
  • Generates LaTeX include code for paper integration
  • Supports 10+ figure types: bar, line, scatter, heatmap, training-curve, ablation, violin, radar, t-SNE, attention

How to install figure-generation

npx skills add https://github.com/lingzhi227/agent-research-skills --skill figure-generation
Prerequisites
  • Python with matplotlib and seaborn installed
  • Data file (CSV, JSON, NPY, PKL) or results directory (optional)
Claude Code
Cursor
Windsurf
Cline

How to use figure-generation

  1. 1.Describe the desired figure (type, data mapping, style)
  2. 2.Optionally provide path to data file or results directory
  3. 3.The skill expands your description into specifications
  4. 4.Code is generated, executed, and iterated up to 4 times if errors occur
  5. 5.Visual inspection refines the output for publication quality
  6. 6.Retrieve PNG preview and PDF vector file for your paper

Use cases

Good for
  • Creating comparison bar charts for experimental results
  • Plotting training curves and loss trajectories
  • Generating heatmaps for correlation or attention analysis
  • Producing ablation study visualizations
  • Making scatter plots with color/size encoding for multi-dimensional data
Who it's for
  • Researchers writing academic papers
  • ML/AI practitioners visualizing experimental results
  • Scientists preparing publication-ready figures
  • Anyone needing colorblind-friendly, print-quality plots

figure-generation FAQ

What figure types are supported?

Bar, line, scatter, heatmap, training-curve, ablation, violin, radar, t-SNE, and attention plots.

Can I use my own data?

Yes. Provide a path to CSV, JSON, NPY, or PKL files, or point to a results directory.

What output formats do I get?

PNG at 300 DPI for preview, vector PDF for publication, and LaTeX include code.

How does error handling work?

If execution fails, the pipeline automatically captures the traceback, regenerates the script, and retries up to 4 times.

Are the figures colorblind-friendly?

Yes. The skill enforces colorblind-friendly palettes and requires all text ≥8pt at print size.

Full instructions (SKILL.md)

Source of truth, from lingzhi227/agent-research-skills.


name: figure-generation description: Generate publication-quality scientific figures using matplotlib/seaborn with a three-phase pipeline (query expansion, code generation with execution, VLM visual feedback). Handles bar charts, line plots, heatmaps, training curves, ablation plots, and more. Use when the user needs figures, plots, or visualizations for a paper. argument-hint: [figure-description]

Scientific Figure Generation

Generate publication-quality figures for research papers.

Input

  • $0 — Description of the desired figure
  • $1 — (Optional) Path to data file (CSV, JSON, NPY, PKL) or results directory

Scripts

Generate figure template

python ~/.claude/skills/figure-generation/scripts/figure_template.py --type bar --output figure_script.py --name comparison
python ~/.claude/skills/figure-generation/scripts/figure_template.py --list-types

Available types: bar, training-curve, heatmap, ablation, line, scatter, radar, violin, tsne, attention

Three-Phase Pipeline (from MatPlotAgent)

Phase 1: Query Expansion

Expand the user's figure description into step-by-step coding specifications using the prompts in references/figure-prompts.md. Determine: figure type, data mapping (x/y/color/hue), style requirements, paper conventions.

Phase 2: Code Generation with Execution Loop (up to 4 retries)

  1. Generate a self-contained Python script using the template from scripts/figure_template.py as a starting point
  2. Write script to a temp file and execute: python figure_script.py
  3. If error: capture traceback, feed back, regenerate (see ERROR_PROMPT in references)
  4. If no .png produced: add explicit save instruction, retry
  5. On success: report the generated figure path

Phase 3: Visual Refinement

Read the generated PNG file and visually inspect using the VLM feedback prompts from references/figure-prompts.md:

  • Does the figure type match the request?
  • Are labels, titles, and legends correct?
  • Is the color scheme appropriate and consistent?
  • Are axis scales sensible? Is text readable at publication size?

If improvements needed: generate corrective instructions and re-execute.

References

  • All MatPlotAgent prompts: ~/.claude/skills/figure-generation/references/figure-prompts.md
  • Figure templates: ~/.claude/skills/figure-generation/scripts/figure_template.py

Output

Both PNG (preview, 300 DPI) and PDF (vector, for paper) formats. Plus the LaTeX include code:

\begin{figure}[t]
    \centering
    \includegraphics[width=\linewidth]{figures/figure_name.pdf}
    \caption{Description. Best viewed in color.}
    \label{fig:figure_name}
\end{figure}

Quality Requirements

  • DPI ≥ 300, or vector PDF
  • Colorblind-friendly palette (no red-green only)
  • All text ≥ 8pt at print size
  • Consistent styling across all paper figures
  • No matplotlib default title — use LaTeX caption

Related Skills

  • Upstream: data-analysis, experiment-code
  • Downstream: paper-writing-section, paper-compilation, slide-generation
  • See also: table-generation

Related skills

More from lingzhi227/agent-research-skills and the wider catalog.

GIgithub-research logo

github-research

lingzhi227/agent-research-skills

Explore and analyze GitHub repositories related to a research topic. Reads deep-research output, discovers repos from multiple sources, deeply analyzes code, and produces integration blueprints.

1.0k installs
IDidea-generation logo

idea-generation

lingzhi227/agent-research-skills

Generate novel research ideas with iterative refinement and novelty checking against literature. Score ideas on Interestingness, Feasibility, and Novelty. Use when brainstorming research directions or validating idea novelty.

1.1k installs
LAlatex-formatting logo

latex-formatting

lingzhi227/agent-research-skills

Handle LaTeX formatting, templates, and styling for academic papers. Set up conference templates (ICML, ICLR, NeurIPS, AAAI, ACL), fix formatting issues, manage packages, and ensure venue-specific compliance. Use when the user needs to set up a paper template, fix LaTeX formatting, or prepare for submission.

1.3k installs
LIliterature-review logo

literature-review

lingzhi227/agent-research-skills

Conduct comprehensive literature reviews through multi-perspective expert dialogue and systematic paper synthesis.

2.5k installs
LIliterature-search logo

literature-search

lingzhi227/agent-research-skills

Search academic literature across Semantic Scholar, arXiv, and OpenAlex with structured results and BibTeX export.

1.6k installs
MAmath-reasoning logo

math-reasoning

lingzhi227/agent-research-skills

Formal mathematical reasoning for research papers — derive equations, write proofs, formalize problem settings, select statistical tests, and generate LaTeX math notation. Use when the user needs mathematical derivations, theorem proofs, notation tables, or statistical analysis formalization.

1.2k installsAudited