name: create-figure description: > Create publication-quality figures, charts, and diagrams. Multi-backend: Graphviz, Mermaid, NetworkX/D3, matplotlib, plotly, seaborn. 50+ visualization types for any domain. allowed-tools: Bash, Read triggers:
General
- create figure
- create chart
- create diagram
- create plot
- generate figure
- make chart
- publication figure
- IEEE figure
Architecture & Code
- architecture diagram
- dependency graph
- class diagram
- UML diagram
- module dependencies
- workflow diagram
- pipeline diagram
Metrics & Data
- metrics visualization
- bar chart
- pie chart
- line chart
- heatmap
- correlation matrix
Control Systems
- bode plot
- nyquist plot
- root locus
ML/LLM
- confusion matrix
- ROC curve
- training curves
- scaling law
- attention heatmap
Biology
- violin plot
- volcano plot
- survival curve metadata: short-description: "Create figures, charts, diagrams (50+ types)"
create-figure
Generate publication-quality figures from code analysis data for academic papers.
Quick Start for Agents
Don't get overwhelmed by 50+ commands! Use domain navigation:
# Step 1: Find your domain
create-figure domains
# Step 2: List commands for your domain
create-figure list --domain ml # ML/LLM projects
create-figure list --domain control # Aerospace/control systems
create-figure list --domain bio # Bioinformatics
# Step 3: Or get recommendations by data type
create-figure recommend --data-type classification
create-figure recommend --data-type time_series
create-figure recommend --show-types # See all data types
Domain Quick Reference
| Domain | Use For | Key Commands |
|---|---|---|
| core | Any project | metrics, workflow, architecture, deps |
| ml | ML/LLM evaluation | confusion-matrix, roc-curve, training-curves, scaling-law |
| control | Aerospace, control systems | bode, nyquist, rootlocus, state-space |
| field | Nuclear, thermal, physics | contour, vector-field, heatmap |
| project | Scheduling, requirements | gantt, pert, radar, sankey |
| math | Pure mathematics | 3d-surface, complex-plane, phase-portrait |
| bio | Bioinformatics, medical | violin, volcano, survival-curve, manhattan |
| hierarchy | Breakdowns, fault trees | treemap, sunburst, force-graph |
Architecture
Multi-backend design for maximum compatibility:
| Backend | Use Case | Output Formats |
|---|---|---|
| Graphviz | Deterministic layouts, CI-friendly | PDF, PNG, SVG, DOT |
| Mermaid | Quick documentation, GitHub-compatible | PDF, PNG, SVG, MMD |
| NetworkX | Graph manipulation, D3 export | JSON, PDF, PNG |
| matplotlib/seaborn | Publication charts (IEEE settings) | PDF, PNG, SVG |
| plotly | Interactive Sankey, sunburst, treemap | PDF, PNG, HTML |
| pydeps | Python module dependencies | via Graphviz |
| pyreverse | UML class diagrams | via Graphviz |
Common Commands
deps - Dependency Graph
./run.sh deps --project /path/to/package --output deps.pdf
./run.sh deps -p ./src -o deps.svg --backend mermaid --depth 3
architecture - Architecture Diagram
./run.sh architecture --project ./assess_output.json --output arch.pdf
metrics - Metrics Chart
./run.sh metrics --input data.json --output metrics.pdf --type bar
./run.sh metrics -i data.json -o chart.pdf --type pie --title "Issue Distribution"
Chart types: bar, hbar, pie, line
workflow - Workflow Diagram
./run.sh workflow --stages "Scope,Analysis,Search,Learn,Draft" --output workflow.pdf
confusion-matrix - Confusion Matrix
./run.sh confusion-matrix --input results.json --output confusion.pdf --normalize
roc-curve - ROC Curve
./run.sh roc-curve --input roc_data.json --output roc.pdf
bode - Bode Plot
./run.sh bode --num 1,2 --den 1,3,2 --output bode.pdf
heatmap - Heatmap
./run.sh heatmap --input matrix.json --output flux.pdf --cmap plasma
sankey - Sankey Diagram
./run.sh sankey --input flows.json --output sankey.pdf
from-assess - Generate All Figures
Generate all figures from /assess output in one command:
./run.sh from-assess --input assess_output.json --output-dir ./figures/
Generates:
architecture.pdf- System architecture diagramdependencies.pdf- Module dependency graphfeatures.pdf- Feature distribution chartissues.pdf- Issue severity pie chart
Publication Quality Settings
matplotlib figures use IEEE publication settings:
- Font: 8pt Times New Roman (serif)
- DPI: 600 for saving, 300 for display
- Column widths: Single (3.5"), Double (7.16")
- TrueType fonts for Illustrator compatibility
Dependencies
Required:
- Python 3.10+
- typer
- numpy
Optional (enables features):
| Package | Features Enabled |
|---|---|
| matplotlib | All charts, plots, diagrams |
| seaborn | Heatmaps, publication styling |
| plotly | Sankey, sunburst, treemap, interactive |
| networkx | Force-directed graphs, PERT |
| scipy | Bode/Nyquist fallback, contours |
| control | Bode, Nyquist, root locus |
| graphviz | Dependency/architecture diagrams |
Installation
# Core
pip install typer numpy matplotlib
# Full installation (all features)
pip install typer numpy matplotlib seaborn plotly networkx pandas squarify scipy control pydeps pylint
# System dependencies
apt install graphviz # Debian/Ubuntu
npm install -g @mermaid-js/mermaid-cli