CLI for rendering charts in terminals from numeric text data. chartli turns plain numbers into terminal charts. ascii, spark, bars, columns, heatmap, unicode, braille, svg.
Run instantly:
npx chartli --helpOr install globally:
pnpm add -g chartliQuick start:
npx chartli
npx chartli --helpnpx chartli [file] [options]Usage: chartli [options] [file]
Render terminal charts from numeric data
Arguments:
file Input file (reads from stdin if not provided)
Options:
-v, --version Output the version number
-t, --type <type> Chart type: svg, ascii, unicode, braille, spark, bars,
columns, heatmap (default: "ascii")
-w, --width <number> Chart width
-h, --height <number> Chart height
-m, --mode <mode> SVG mode: circles or lines (default: "circles")
--help Display help for command
asciisparkbarscolumnsheatmapunicodebraillesvg
examples/assets/core-single-series.txtexamples/assets/core-multi-series.txtexamples/assets/image-data.txtexamples/assets/image-columns-variant.txt
pnpm chartli examples/assets/image-data.txt -t ascii -w 24 -h 8 1.00 │ ○
│
│ ◇ ◇
│ ◆ ●
0.50 │ ● ◆
│ ◇ ◆ ●
│ ○ ◆
0.00 │◇ ◆ ◇ ◇
└────────────────────────
pnpm chartli examples/assets/image-data.txt -t sparkS1 ▁▂▃▄▅▆
S2 ▁▄▂▇▅█
S3 ▁▂▄▃▆▅
S4 ▁▄▂▇▂▇
pnpm chartli examples/assets/image-data.txt -t bars -w 28S1 |███████████████████ | 0.67
S2 |▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓| 1.00
S3 |▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ | 0.53
S4 |░░░░░░░░░░░░░░░░░░░░░░░ | 0.83
pnpm chartli examples/assets/image-data.txt -t columns -h 8 ▓
▓ ░
▓ ░
█ ▓ ░
█ ▓ ▒ ░
█ ▓ ▒ ░
█ ▓ ▒ ░
█ ▓ ▒ ░
───────
1 2 3 4
pnpm chartli examples/assets/image-columns-variant.txt -t columns -h 8 ▓ ░
█ ▓ ░
█ ▓ ░
█ ▓ ▒ ░
█ ▓ ▒ ░
█ ▓ ▒ ░
───────
1 2 3 4
pnpm chartli examples/assets/image-data.txt -t heatmap C1 C2 C3 C4
R01
R02 ░ ▒ ░ ▒
R03 ░ ░ ▒ ░
R04 ▒ ▓ ░ ▓
R05 ▒ ▒ ▓ ░
R06 ▓ █ ▒ ▓
pnpm chartli examples/assets/image-data.txt -t unicode █
▃ █ ▅ ▅
▃ █ █ ▃ █ █
▂█ █▆█ █▂ █ █
▂██ ▂ ███ ▂ ██ ▃ █ █
▁███ █ ███ █▁██ █ █ █
▁████ █▅███ ▁████ █▁█▁█
█████ █████ █████ █████
pnpm chartli examples/assets/image-data.txt -t braille -w 16 -h 6⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡀⠀⠀⠈
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠄⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠂⠀⠀⠀⠀⠀⠀⠀⠀⠀
⡀⠀⠀⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
...
pnpm chartli examples/assets/image-data.txt -t svg -m lines -w 320 -h 120 | sed -n '/^<?xml/,$p' > examples/assets/output/image-chart.svg<?xml version='1.0'?>
<svg xmlns='http://www.w3.org/2000/svg' width='650' height='120' version='1.1'>
<polyline ... />
<polyline ... />
<polyline ... />
<polyline ... />
</svg>
All examples are data-file driven from examples/assets/.
examples/assets/core-single-series.txtexamples/assets/core-multi-series.txtexamples/assets/image-data.txtexamples/assets/image-columns-variant.txtexamples/assets/output/
pnpm chartli examples/assets/core-single-series.txt -t ascii -w 24 -h 8pnpm chartli examples/assets/core-multi-series.txt -t sparkpnpm chartli examples/assets/core-multi-series.txt -t bars -w 28pnpm chartli examples/assets/core-multi-series.txt -t columns -h 8pnpm chartli examples/assets/core-multi-series.txt -t heatmappnpm chartli examples/assets/core-multi-series.txt -t unicodepnpm chartli examples/assets/core-single-series.txt -t braille -w 16 -h 6pnpm chartli examples/assets/core-multi-series.txt -t svg -m lines -w 320 -h 120 | sed -n '/^<?xml/,$p' > examples/assets/output/core-chart.svg
pnpm chartli examples/assets/image-data.txt -t ascii -w 24 -h 8pnpm chartli examples/assets/image-data.txt -t sparkpnpm chartli examples/assets/image-data.txt -t bars -w 28pnpm chartli examples/assets/image-data.txt -t columns -h 8pnpm chartli examples/assets/image-columns-variant.txt -t columns -h 8pnpm chartli examples/assets/image-data.txt -t heatmappnpm chartli examples/assets/image-data.txt -t unicodepnpm chartli examples/assets/image-data.txt -t braille -w 16 -h 6pnpm chartli examples/assets/image-data.txt -t svg -m lines -w 320 -h 120 | sed -n '/^<?xml/,$p' > examples/assets/output/image-chart.svg
pnpm run example:kitchen-sinkpnpm run example:image-set:kitchen-sinkpnpm run example:all-kitchen-sink
Image-set chart run:
pnpm run example:image-set:kitchen-sinkCore + image run:
pnpm run example:all-kitchen-sinkInstall the repository skill for agents:
npx skills add ahmadawais/chartliApache-2.0 by Ahmad Awais built with Command Code.
