Chart MPL
Generate chart images from CSV files with scripts/chart_mpl.py.
Setup
Create a virtual environment and install matplotlib (one-time):
python3 -m venv ~/.openclaw/workspace/.venv_chart
~/.openclaw/workspace/.venv_chart/bin/pip install matplotlib
Quick start
Run from workspace root:
~/.openclaw/workspace/.venv_chart/bin/python skills/chart-mpl/scripts/chart_mpl.py \
--csv /path/to/data.csv \
--xcol Mois \
--ycol Valeur \
--kind line \
--title "Monthly trend" \
--xlabel "Month" \
--ylabel "Value"
Output defaults to:
~/.openclaw/workspace/exports/images
Inputs
--csvpath to CSV file--xcolcolumn for X axis--ycolnumeric column(s) for Y axis — comma-separated for multi-series (e.g.Sales,Costs)--kindchart type:line,bar,hbar,pie,stacked,scatter,area- Optional:
--delimif auto-detection fails (;,,,\t,|) - Optional:
--outcustom output path (PNG or SVG — format detected from extension) - Optional:
--title,--xlabel,--ylabel - Optional:
--top Nshow only top N categories by value (bar, hbar, pie, stacked). Multi-series ranks by row total. - Optional:
--sortsort data before plotting:x-asc,x-desc,y-desc,none(default:none) - Optional:
--numfmtnumber format on Y axis:fr(1,5M) oren(1.5M) — default:fr
Chart types
| Kind | Description | Multi-series |
|---|---|---|
line | Line chart with markers | yes |
bar | Vertical bar chart (grouped when multi-series) | yes |
hbar | Horizontal bar chart (grouped when multi-series) | yes |
pie | Pie chart (first Y column only) | no |
stacked | Stacked vertical bar (requires 2+ Y) | yes |
scatter | Scatter plot | yes |
area | Filled area chart | yes |
Notes
- Script auto-detects delimiters when possible.
- Script tolerates European and US numeric formats (
1 234,56,1,234.56). - Non-numeric values in
ycolare converted toNaNwith a warning. - Handles BOM-encoded CSV files (
utf-8-sig). - Multi-series charts automatically show a legend and cycle through an 8-color palette.
- Y-axis ticks use human-readable formatting (K, M, G suffixes) with French or English decimals.
--top Nkeeps the N highest categories. For pie charts, the remainder is aggregated into an "Other" slice. For bar/hbar/stacked, the rest are excluded.- Output format (PNG or SVG) is detected from the
--outfile extension. Default is PNG.
End-to-end flow with SQL skill
- Export query result to CSV using the
mssqlskill. - Run this script on that CSV.
- Share the generated PNG path.