Skip to content
100% local

Text sparkline

Draw a miniature character bar chart from a list of numbers.

Input
Output

Text sparkline

Paste a list of numbers and this tool turns them into a miniature bar chart made of characters — a sparkline you can drop into a spreadsheet cell, a chat message, a commit log or a plain-text report. Each line of input becomes its own chart, so several metrics stacked on top of each other render in one pass, with no image and no export step.

Choose the character set — solid blocks, a size gradient of dots, or plain ASCII for places where block glyphs do not render — and how many height levels the chart uses, from a coarse up-or-down read to a full 8-level gradient. Scaling can start at the series' own lowest value, stretching subtle differences across the full height, or at zero, which keeps small numbers from looking dramatic. The separator handles spaces, commas or one number per line, and a line written as "Label: 1 2 3" keeps that label in front of its chart. Turn on the trend arrow for the overall direction, or the min/max/average summary next to the picture. A long series can be capped to a maximum length, which bucket-averages it down to a readable width instead of truncating it.

Windows and Unix line endings are read the same way, and every non-empty line becomes its own series — that is how several charts end up stacked with a label each. A line with no numbers, such as a heading, is simply skipped. The tally under the output reports how many series and values were plotted, plus the processing time.

Everything runs in your browser; the numbers you paste are never uploaded anywhere. Copy the result, download it as a .txt file, or send the output back into the input to keep refining the chart.

FAQ

How does labeling a series work?
Start a line with "Label: " before the numbers, for example "Sales: 4 7 3 9". Everything before the colon becomes the label, as long as it is not itself a plain number.
What is the difference between scaling from zero and from the minimum?
Scaling from the minimum stretches the smallest and largest values to the full height, which shows relative change clearly. Scaling from zero keeps the chart proportional to the real size of the numbers, so a small dip does not look like a crash.
Can I chart more than one series at once?
Yes. Every non-empty line in the input is treated as its own series and rendered on its own line, stacked underneath the ones before it.
Why did some numbers get averaged together?
When "Max length" is set above 0 and a series has more values than that limit, the tool groups the values into that many buckets and averages each one, so a long series still fits on a readable line instead of being cut off.
Is my data uploaded anywhere?
No. Every sparkline is drawn entirely in your browser — your numbers never leave your device.