This skill should be used when the user asks to "create a figure", "make a scientific figure", "create a paper figure", "generate a figure element", "make an icon", "plot data for a figure", "compose figure panels", "create a graphical abstract", "make a multi-panel figure", "generate a PDF figure", "create a Nature-style figure", "make a publication figure", "create a figure for my grant", "make a poster figure", "create a schematic diagram", or mentions scientific figures, figure elements, figure composition, figure panels, icons for papers, matplotlib/seaborn/ggplot plots for figures, or react-pdf figures.
From scientific-figuresnpx claudepluginhub neuromechanist/research-skills --plugin scientific-figuresThis skill uses the workspace's default tool permissions.
examples/matplotlib-element.pyexamples/multi-panel.tsxreferences/color-palettes.mdreferences/element-icons.mdreferences/element-plots.mdreferences/figure-composition.mdreferences/figure-standards.mdreferences/icon-bible.mdreferences/icon-templates.jsonreferences/react-pdf-guide.mdscripts/generate_icon.pyProvides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Analyzes competition with Porter's Five Forces, Blue Ocean Strategy, and positioning maps to identify differentiation opportunities and market positioning for startups and pitches.
Create publication-quality scientific figures for Nature, Science, PNAS, Cell, and other top-tier journals. This skill covers the full pipeline: generating individual figure elements (icons, plots, diagrams), composing them into multi-panel layouts, and exporting as pixel-perfect PDFs.
1. Plan layout --> 2. Create elements --> 3. Compose PDF --> 4. Visual QA
(panels, size) (icons, plots) (react-pdf) (render, verify)
Every step uses on-the-fly execution via uvx (Python) or bunx (JS/TS); no permanent installs required.
All figures must meet these publication standards:
references/color-palettes.md)Consult references/figure-standards.md for journal-specific dimensions and font requirements.
Determine before creating anything:
references/color-palettes.md or define customEach panel contains one or more elements. Generate them as SVG or transparent PNG.
Flat, minimalist scientific icons in Nature/Science style. See references/element-icons.md for full guide.
# From template (icon bible)
uvx --from "openai python-dotenv pillow" python scripts/generate_icon.py --template brain-eeg -o elements/brain.png --transparent
# Free-form
uvx --from "openai python-dotenv pillow" python scripts/generate_icon.py "a DNA helix" -o elements/dna.png --transparent
Template catalog: references/icon-templates.json. Schema: references/icon-bible.md.
Generate publication-quality plots as SVG or transparent PNG. See references/element-plots.md for full guide.
# Quick inline plot
uvx --from "matplotlib seaborn numpy" python -c "
import matplotlib.pyplot as plt
import seaborn as sns
import numpy as np
plt.rcParams.update({
'font.family': 'sans-serif',
'font.sans-serif': ['Helvetica', 'Arial'],
'font.size': 9,
'axes.linewidth': 0.8,
'xtick.major.width': 0.8,
'ytick.major.width': 0.8,
})
# ... plot code ...
plt.savefig('elements/plot.svg', bbox_inches='tight', transparent=True)
"
Key rules for plot elements:
transparent=True and bbox_inches='tight'savefig with SVG format (vector, scalable) or PNG at 600 DPIFull ggplot2 and plotly templates with publication rcParams are in references/element-plots.md. Use the same font, spine, and tick conventions as the matplotlib example above.
Assemble elements into a precisely-sized PDF using react-pdf. See references/figure-composition.md for full guide.
cd figures/<figure-name>
bunx --bun create-bun@latest . --yes 2>/dev/null; bunx --bun add @react-pdf/renderer react
Write a render script (e.g., render.tsx) using react-pdf primitives (Document, Page, View, Text, Image). See references/react-pdf-guide.md for API reference and examples/multi-panel.tsx for a working example.
Standard sizes in points (1in = 72pt):
| Journal | Single column | Double column |
|---|---|---|
| Nature | 252pt (89mm) | 519pt (183mm) |
| Science | 245pt | 504pt |
| PNAS | 246pt | 504pt |
| Cell | 241pt (85mm) | 493pt (174mm) |
bunx --bun run render.tsx # outputs figure.pdf
For researchers using LaTeX for figure composition, standard LaTeX figure tools (includegraphics, subfigure) remain a valid alternative. This skill focuses on the react-pdf workflow for its precise layout control and programmatic composition.
After rendering the PDF, verify it is paper-ready before delivery. This step is critical; figure creation without visual verification is incomplete.
uv run --with pdf2image --with pillow python -c "
from pdf2image import convert_from_path
pages = convert_from_path('figure.pdf', dpi=300)
pages[0].save('figure_preview.png', 'PNG')
"
See references/figure-composition.md for alternative conversion approaches (e.g., pdftoppm).
You must read figure_preview.png using the Read tool. Do not skip this step. Visually analyze the image and verify every item below. Report each finding explicitly.
If any issue is found:
render.tsx) to address the issueDo not deliver a figure that has not passed visual QA. A figure with overlapping labels or misaligned panels undermines the quality of the entire paper.
Generate a figure caption that:
references/figure-standards.md - Journal dimension specs, font rules, resolution requirementsreferences/color-palettes.md - Curated publication-quality color palettes (colorblind-safe)references/element-icons.md - Icon generation guide (gpt-image-1.5, templates, style)references/element-plots.md - Plot element guide (matplotlib, seaborn, plotly, ggplot2)references/figure-composition.md - react-pdf composition workflow and QA loopreferences/react-pdf-guide.md - react-pdf API quick referencereferences/icon-bible.md - Icon template schema and categoriesreferences/icon-templates.json - Structured icon template catalogexamples/multi-panel.tsx - Working 2x2 panel react-pdf figureexamples/matplotlib-element.py - Publication-quality matplotlib elementscripts/generate_icon.py - Icon generation via gpt-image-1.5 (template and free-form)