charts
Use when producing a chart, plot or data visualisation as an image — for a report, a slide deck, or to show a result in chat.
Skill by iaa2005
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/iaa2005-charts
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, presentations, data
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/charts
What's inside
- Skill name
charts- Description
- Use when producing a chart, plot or data visualisation as an image — for a report, a slide deck, or to show a result in chat.
- License
- MIT
- Instructions
- 112 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (3)
- SKILL.md
- check_palette.py · scripts/
- make_chart.py · scripts/
SKILL.md (first lines)
## Which engine am I in?
Read the first line of the RunPython tool description:
- **PYODIDE** — Python in WebAssembly. Pure-Python packages install on import;
no subprocess, no system binaries.
- **LOCAL SUBPROCESS** — the user's real Python. Everything works, including
system tools — check with `shutil.which(...)` before relying on one.
- **PODMAN CONTAINER** — isolated container with python3, nodejs and tectonic.
Files persist between RunPython calls in the same chat, so build in steps and
inspect as you go rather than writing one long script.
matplotlib works in every engine. Save to PNG; the file persists in the working
directory and is attached to the conversation automatically, so it can be
embedded into a .docx, .pptx or .pdf in a later call.
## Rendering from a CSV — use the script
```
python scripts/make_chart.py data.csv --x region --y revenue --kind bar -o out.png
python scripts/make_chart.py data.csv --x month --y sales --kind line --keep-order
```
It applies the rules below instead of leaving them to be remembered: bar axes
start at zero, bars are sorted by value (`--keep-order` when the order carries
meaning, e.g. months), values are labelled directly on the bars rather than via
a legend, spines are trimmed, duplicate categories are summed, non-numeric rows
are reported rather than dropped in silence, and the font has Cyrillic glyphs.
Then LOOK at the file. Overlapping labels are only visible to the eye.
## Baseline (writing it yourself)
```python
import matplotlib
matplotlib.use('Agg') # no display in any of these engines
import matplotlib.pyplot as plt
fig, ax = plt.subplots(figsize=(8, 4.5), dpi=150)
ax.bar(regions, revenue, color='#4472C4')
ax.set_title('Revenue by region')
ax.set_ylabel('₽')
ax.spines[['top', 'right']].set_visible(False)
ax.grid(axis='y', alpha=.3)
fig.tight_layout()
fig.savefig('revenue.png')
```
`matplotlib.use('Agg')` before importing pyplot — without it, the backend can
try to open a window and fail.
## Choosing the form
Comparing categories → bar, sorted by value unless the order carries meaning
(months stay in month order). Change over time → line. Part of a whole → bar,
not pie; a pie with more than four slices is unreadable. Relationship between
two variables → scatter. Distribution → histogram.
## Rules that decide whether it is readable
Start a bar axis at zero. A truncated bar axis misrepresents the difference —
that is the single most common misleading chart.
Label the axes with units. A number without a unit is not information.
Do not encode meaning only in colour — a colour-blind reader loses it. Order,
labels or patterns should carry the message too.
Sort bars by value. An unsorted bar chart makes the reader do the ranking.
Direct-label the important series instead of relying on a legend the eye has to
travel to.
## Check the palette — you cannot eyeball this
```
python scripts/check_palette.py "#4472C4" "#ED7D31" "#A5A5A5"
python scripts/check_palette.py --tab10 --bg "#1a1a1a"
```
Reports contrast against the background (below 3:1 a bar is hard to see) and
simulates deuteranopia, protanopia and tritanopia to catch series that collapse
into one colour. Around 8% of men cannot separate red from green: a palette that
looks varied to you can carry no information at all for them.
If it flags a pair, do not just swap hues — vary LIGHTNESS as well, direct-label
the series, or add markers/patterns. Hue alone is never a safe channel.
## Cyrillic labels
Set a font that has the glyphs, or every label renders as boxes:
```python
matplotlib.rcParams['font.family'] = 'DejaVu Sans'
```
## Verify
Reopen the file and confirm it is a real image, not a 0-byte stub:
```python
import os
from PIL import Image
assert os.path.getsize('revenue.png') > 5000
print(Image.open('revenue.png').size)
```
Then look at it. If the labels overlap or the bars are invisible, fix it before
delivering — a chart you never viewed is a guess.From iaa2005/monet-directory, MIT.
More from iaa2005/monet-directory
- 0.529score
xlsx
iaa2005
Use when creating, editing or analysing Excel workbooks (.xlsx) — reports with formulas, multi-sheet models, formatted tables, charts, or reading data out of…
SkillBFreshness: BClaude Code +9 - 0.529score
pdf
iaa2005
Use when reading, creating, merging, splitting or filling PDFs — extracting text or tables, combining files, rotating or watermarking pages, filling a…
SkillBFreshness: BClaude Code +9 - 0.529score
data-analysis
iaa2005
Use when analysing tabular data — CSV, Excel or JSON — computing aggregates, finding anomalies, cleaning messy data, or answering questions about a dataset…
SkillBFreshness: BClaude Code +9 - 0.529score
pptx
iaa2005
Use when building or editing PowerPoint decks (.pptx) — slides, pitch decks, report presentations, speaker notes, applying a corporate template, or extracting…
SkillBFreshness: BClaude Code +9 - 0.529score
docx
iaa2005
Use when creating, editing or extracting from Word documents (.docx) — reports, letters, contracts, templates, filling a template with data, or pulling text…
SkillBFreshness: BClaude Code +9 - 0.529score
web-design
iaa2005
Use when building or reviewing a web interface — a page, component, landing page, dashboard, email or artifact.
SkillBFreshness: BClaude Code +9 - 0.524score
webapp-testing
iaa2005
Use when checking that a web page or app actually works — verifying a UI change, reproducing a bug, testing a form or flow, or confirming how something renders.
SkillBFreshness: BClaude Code +9 - 0.524score
skill-creator
iaa2005
Use when writing a new skill for Code Monet, or improving an existing one — deciding what belongs in a SKILL.md and how to phrase it so the agent actually…
SkillBFreshness: BClaude Code +9 - 0.524score
browse
iaa2005
Automate browser interactions via CLI commands to navigate web pages, extract data, take screenshots, fill forms, and interact with web apps.
SkillBFreshness: BClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Aug 10, 2026 (2 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/iaa2005/monet-directory
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from iaa2005
- 0.529score
xlsx
iaa2005
Use when creating, editing or analysing Excel workbooks (.xlsx) — reports with formulas, multi-sheet models, formatted tables, charts, or reading data out of…
SkillBFreshness: BClaude Code +9 - 0.529score
pdf
iaa2005
Use when reading, creating, merging, splitting or filling PDFs — extracting text or tables, combining files, rotating or watermarking pages, filling a…
SkillBFreshness: BClaude Code +9 - 0.529score
data-analysis
iaa2005
Use when analysing tabular data — CSV, Excel or JSON — computing aggregates, finding anomalies, cleaning messy data, or answering questions about a dataset…
SkillBFreshness: BClaude Code +9 - 0.529score
pptx
iaa2005
Use when building or editing PowerPoint decks (.pptx) — slides, pitch decks, report presentations, speaker notes, applying a corporate template, or extracting…
SkillBFreshness: BClaude Code +9 - 0.529score
docx
iaa2005
Use when creating, editing or extracting from Word documents (.docx) — reports, letters, contracts, templates, filling a template with data, or pulling text…
SkillBFreshness: BClaude Code +9 - 0.529score
web-design
iaa2005
Use when building or reviewing a web interface — a page, component, landing page, dashboard, email or artifact.
SkillBFreshness: BClaude Code +9
Cite this page
charts skill. Agent Mart. https://agentmart.dev/skills/iaa2005-charts (last updated 2026-10-24)