Guide · Agent skill
How to use the Nature Figure Making agent skill (nature-figure)
Updated · written with AI from the project's own documentation and checked against our catalogue data
nature-figure is an agent skill for building scientific figures for journal manuscripts. Once installed, your AI agent follows a detailed playbook for planning a figure's main message and panel layout, plotting with Python (matplotlib or seaborn) or R (ggplot2), applying journal-style fonts and export settings, and checking the output with validation scripts. This guide explains what an agent skill is, how to install this one, how to ask for it in plain language, and what to check before you submit.
Quick start
- 1Download and unzip. Download the skill ZIP from this page and unzip it so the nature-figure folder containing SKILL.md is in ~/.claude/skills/ or a project's .claude/skills/ folder.
- 2Or upload in the Claude apps. In the Claude apps, go to Settings → Capabilities → Skills and upload the skill.
- 3Install plotting libraries. Install matplotlib, seaborn, numpy and scipy for Python, or ggplot2, patchwork and ComplexHeatmap for R, depending on which backend you want.
- 4Ask for a figure in plain words. Describe the data, the claim the figure should support, the panels you need and the target journal, and say whether you want Python or R.
- 5Answer the backend question once. If asked Python or R, answer once. The agent saves it as your default for future plotting tasks.
- 6Run the checks and inspect. Have the agent run the validation scripts on the source and exported PDF, then review each panel at final size and confirm the journal's current policy.
What is an agent skill and what does nature-figure make the agent do?
An agent skill is a folder of instructions and supporting files that an AI agent loads when a task matches the skill's description. Instead of you explaining every detail of journal figure standards each time, the agent reads the skill's playbook and follows it.
For figures, the skill tells the agent to write down the core conclusion of the figure first, then choose a figure type, set the journal and export contract, and only then write code. It covers multi-panel figures, AI-generated graphical abstracts, and hand-built vector schematics. It is not meant for interactive dashboards, data cleaning, or statistics-only analysis, and the skill says so itself.
- Plans the figure's core message and panel layout
- Plots with Python (matplotlib, seaborn) or R (ggplot2, patchwork, ComplexHeatmap)
- Applies journal-style fonts and export settings
- Checks output with validation scripts, including panel alignment and PDF text checks
- Covers AI-generated graphical abstracts and hand-built vector schematics
Install the nature-figure skill
Download the ZIP of the skill from this page. Unzip it so the nature-figure folder (containing SKILL.md) sits in one of these locations. For a personal install for all your projects, use ~/.claude/skills/. For a single project, use the .claude/skills/ folder inside that project.
If you use the Claude apps instead of Claude Code, upload the skill under Settings → Capabilities → Skills. Restart or start a new session if the agent does not pick it up straight away.
The skill's licence is Apache-2.0. Note that the example plotting scripts and preview images under assets/figures4papers/ come from a third-party project with no explicit licence in its upstream repository, so do not redistribute or publish them or derived materials without checking the upstream terms and getting permission where required.
- Personal install: ~/.claude/skills/nature-figure/
- Project install: .claude/skills/nature-figure/ inside your project
- Claude apps: Settings → Capabilities → Skills
~/.claude/skills/Set up Python or R for plotting
For plotting, the skill uses one backend at a time. The Python backend needs matplotlib, seaborn, numpy, and scipy. The R backend needs ggplot2, patchwork, and ComplexHeatmap. Install whichever you plan to use before asking for a figure that needs rendering.
The first time you ask for a plot, the agent asks one question: Python or R? It saves your answer as your default using scripts/nature_figure_backend.py. You can also name the backend in your request. Once chosen, the backend stays in use for drawing, previewing, exporting, and checks.
The AI-schematic route is optional. It needs an OpenRouter or image-generation API key for scripts/generate_openrouter_schematic.py. Plotting and vector schematics do not need it.
- Python: matplotlib, seaborn, numpy, scipy
- R: ggplot2, patchwork, ComplexHeatmap
- Optional: OpenRouter or image-generation API key
python scripts/nature_figure_backend.py set pythonTrigger the skill with natural requests
You do not need special syntax. Describe the figure in plain language and mention your data, the claim the figure should support, and the target journal if you have one. The skill's description includes phrases like 论文配图, 科研绘图, multi-panel figures, and submission-ready plots, so requests in English or Chinese both work.
For a graphical abstract or mechanism diagram made with an AI image generator, say so explicitly, for example mentioning OpenRouter or an image-generation API. The agent then uses the AI-schematic route and does not ask about Python or R. For a hand-built editable diagram, ask for a vector schematic; the agent will confirm the brief with you before drawing.
- Make a 3-panel figure from results.csv showing the main effect, the control, and the knockdown validation, in Python, for a Nature-style submission.
- Redraw my existing Figure 2 as a cleaner multi-panel figure with consistent fonts.
- Draft a mechanism schematic of this pipeline as an editable SVG.
- Plan the panels for Figure 1 of my manuscript before writing any code.
Check the output before you submit
The skill asks the agent to run its validation scripts on the plotting source and the exported PDF. These include scripts/validate_figure.py, scripts/audit_pdf_text.py, scripts/audit_figure_collisions.py, and, for multi-panel figures, scripts/audit_panel_alignment.py. The agent should also inspect each panel and the whole figure at its final physical size, because automated checks do not replace that review.
The skill tells the agent to verify each target journal's current policy. Passing the skill's checks does not mean your figure is eligible for submission, and that is especially true for AI-generated graphical abstracts. Check the journal's official instructions and disclosure rules yourself.
- Panel alignment: shared edges and gutters must match within the default 1.5 pt tolerance
- PDF text size and text-to-text or text-to-line collisions
- Source data and export format against the target journal
- Never let the agent invent experimental values; supply the real data
python scripts/validate_figure.pyWhat people use it for
- Preparing a multi-panel Results figure with a main effect, a control, and a validation panel for a manuscript submission.
- Redrawing an existing figure from a paper into cleaner panels with consistent fonts and export settings.
- Adapting the bundled example plotting scripts in assets/figures4papers/ to your own data, while keeping the placeholders for real values.
- Drafting an editable vector mechanism or pipeline schematic before a figure is finalised.
Frequently asked questions
Is the nature-figure skill free?
The skill itself is licensed under Apache-2.0, according to the skill's documentation. The example scripts and preview images bundled under assets/figures4papers/ come from a third-party project with no explicit upstream licence, so they should not be redistributed or published without checking that project's terms.
What do I need to use nature-figure?
You need an agent that supports skills and a folder install or Claude apps upload. For plotting, install Python with matplotlib, seaborn, numpy and scipy, or R with ggplot2, patchwork and ComplexHeatmap. An OpenRouter or image-generation API key is only needed for the optional AI-schematic script.
How do I install the nature-figure skill?
Download the ZIP from this page and unzip the nature-figure folder into ~/.claude/skills/ for all projects, or into a project's .claude/skills/ folder. In the Claude apps, you can instead upload it under Settings → Capabilities → Skills.
Does nature-figure work with ggplot2 or matplotlib?
It supports both. The Python backend uses matplotlib and seaborn, and the R backend uses ggplot2, patchwork and ComplexHeatmap. The skill uses one backend at a time, and it asks Python or R once if you have not chosen.
Can nature-figure do statistics or clean my data?
No. The skill says it is not for interactive dashboards, data cleaning, or statistics-only analysis. Use it after your analysis to build and check the figure.
Will nature-figure guarantee my figure is accepted by a journal?
No. The skill checks layout, fonts, and export details, but it tells the agent to verify each target journal's current policy and disclosure rules. Usefulness of a graphical abstract is separate from whether it is eligible for submission.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
nature-figure suits researchers and students who need journal-style, multi-panel plots from their own data and developers who want to adapt its Python or R scripts. Skip it if you need interactive dashboards, data cleaning, or statistics-only work, or if you need AI-generated images to show experimental values you have not supplied.
Download the skill