academic-paper-reviewe…
Simulates academic peer review, evaluating papers across Originality, Methodology, Results, and Writing to provide Major/Minor Revision recommendations with…
Generate publication-quality PNG chart images from data, supporting line, bar, area, candlestick, pie, and heatmap charts. Triggers when the user asks to visualize data, create a graph, plot a time series, or generate a chart for a report, alert, or dashboard. Runs as a
$ npx -y skills add zebbern/claude-code-guide --skill chart-image --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/chart-imageContext preview
The summary Claude sees to decide when to auto-load this skill.
Generate publication-quality PNG chart images from data, supporting line, bar, area, candlestick, pie, and heatmap charts. Triggers when the user asks to visualize data, create a graph, plot a time series, or generate a chart for a report, alert, or dashboard. Runs as a
name: chart-image
version: 2.5.1
description: "Generate publication-quality PNG chart images from data, supporting line, bar, area, candlestick, pie, and heatmap charts. Triggers when the user asks to visualize data, create a graph, plot a time series, or generate a chart for a report, alert, or dashboard. Runs as a lightweight, headless Node.js process without a browser."
provides:
- capability: chart-generation
methods: [lineChart, barChart, areaChart, pieChart, candlestickChart, heatmap]Generate PNG chart images from data using Vega-Lite. Perfect for headless server environments.
**Built for Fly.io / VPS / Docker deployments:**
cd /data/clawd/skills/chart-image/scripts && npm install
node /data/clawd/skills/chart-image/scripts/chart.mjs \
--type line \
--data '[{"x":"10:00","y":25},{"x":"10:30","y":27},{"x":"11:00","y":31}]' \
--title "Price Over Time" \
--output chart.pngnode chart.mjs --type line --data '[{"x":"A","y":10},{"x":"B","y":15}]' --output line.pngnode chart.mjs --type bar --data '[{"x":"A","y":10},{"x":"B","y":15}]' --output bar.pngnode chart.mjs --type area --data '[{"x":"A","y":10},{"x":"B","y":15}]' --output area.png# Pie
node chart.mjs --type pie --data '[{"category":"A","value":30},{"category":"B","value":70}]' \
--category-field category --y-field value --output pie.png
# Donut (with hole)
node chart.mjs --type donut --data '[{"category":"A","value":30},{"category":"B","value":70}]' \
--category-field category --y-field value --output donut.pngnode chart.mjs --type candlestick \
--data '[{"x":"Mon","open":100,"high":110,"low":95,"close":105}]' \
--open-field open --high-field high --low-field low --close-field close \
--title "Stock Price" --output candle.pngnode chart.mjs --type heatmap \
--data '[{"x":"Mon","y":"Week1","value":5},{"x":"Tue","y":"Week1","value":8}]' \
--color-value-field value --color-scheme viridis \
--title "Activity Heatmap" --output heatmap.pngCompare multiple trends on one chart:
node chart.mjs --type line --series-field "market" \
--data '[{"x":"Jan","y":10,"market":"A"},{"x":"Jan","y":15,"market":"B"}]' \
--title "Comparison" --output multi.pngnode chart.mjs --type bar --stacked --color-field "category" \
--data '[{"x":"Mon","y":10,"category":"Work"},{"x":"Mon","y":5,"category":"Personal"}]' \
--title "Hours by Category" --output stacked.pngPrice line with volume bars:
node chart.mjs --type line --volume-field volume \
--data '[{"x":"10:00","y":100,"volume":5000},{"x":"11:00","y":105,"volume":3000}]' \
--title "Price + Volume" --output volume.pngnode chart.mjs --sparkline --data '[{"x":"1","y":10},{"x":"2","y":15}]' --output spark.pngSparklines are 80x20 by default, transparent, no axes.
| Option | Description | Default | |--------|-------------|---------| | `--type` | Chart type: line, bar, area, point, pie, donut, candlestick, heatmap | line | | `--data` | JSON array of data points | - | | `--output` | Output file path | chart.png | | `--title` | Chart title | - | | `--width` | Width in pixels | 600 | | `--height` | Height in pixels | 300 |
| Option | Description | Default | |--------|-------------|---------| | `--x-field` | Field name for X axis | x | | `--y-field` | Field name for Y axis | y | | `--x-title` | X axis label | field name | | `--y-title` | Y axis label | field name | | `--x-type` | X axis type: ordinal, temporal, quantitative | ordinal | | `--y-domain` | Y scale as "min,max" | auto |
| Option | Description | Default | |--------|-------------|---------| | `--color` | Line/bar color | #e63946 | | `--dark` | Dark mode theme | false | | `--svg` | Output SVG instead of PNG | false | | `--color-scheme` | Vega color scheme (category10, viridis, etc.) | - |
| Option | Description | Default | |--------|-------------|---------| | `--show-change` | Show +/-% change annotation at last point | false | | `--focus-change` | Zoom Y-axis to 2x data range | false | | `--focus-recent N` | Show only last N data points | all | | `--show-values` | Label min/max peak points | false |
| Option | Description | Default | |--------|-------------|---------| | `--series-field` | Field for multi-series line charts | - | | `--stacked` | Enable stacked bar mode | false | | `--color-field` | Field for stack/color categories | - |
| Option | Description | Default | |--------|-------------|---------| | `--open-field` | OHLC open field | open | | `--high-field` | OHLC high field | high | | `--low-field` | OHLC low field | low | | `--close-field` | OHLC close field | close |
| Option | Description | Default | |--------|-------------|---------| | `--category-field` | Field for pie slice categories | x | | `--donut` | Render as donut (with center hole) | false |
| Option | Description | Default | |--------|-------------|---------| | `--color-value-field` | Field for heatmap intensity
Claude Code Guide - Setup, Commands, workflows, agents, skills & tips-n-tricks from beginner to power user!
Repo: zebbern/claude-code-guide
Simulates academic peer review, evaluating papers across Originality, Methodology, Results, and Writing to provide Major/Minor Revision recommendations with…
This skill should be used when the user asks to "attack Active Directory", "exploit AD", "Kerberoasting", "DCSync", "pass-the-hash", "BloodHound enumeration",…
This skill should be used when the user asks to "test API security", "fuzz APIs", "find IDOR vulnerabilities", "test REST API", "test GraphQL", "API…
Generate multiple radically different interface designs for a module using parallel sub-agents. Use when user wants to design an API, explore interface…
Interactive system flow tracing across CODE, API, AUTH, DATA, NETWORK layers with SQLite persistence and Mermaid export. Use for security audits, compliance…
Authentication patterns: session vs JWT vs OAuth comparison, provider selection (NextAuth, Clerk, Supabase Auth), security checklist, and common mistakes. Use…