bar
1-min readUpdated Sep 03, 2026
Horizontal bars for comparing rows of one series. The default choice for a chart.
Cells: label | value. Extra options: total, max, sort.
Default scale URL copied
Widths are relative to the largest row. Values print exactly as written, so 1,264 stays 1,264.
```bar title="Commits touching each file"
tasks.js | 264 @accent
scripts.js | 154
core.py | 141
pyproject.toml | 127 @muted
```
total=sum adds each row's share URL copied
Use it when the rows partition a whole. The share is computed, so it cannot disagree with the counts.
total= a fixed whole URL copied
When the rows are a selection rather than a partition, name the whole. The column then does not sum to 100, and that is honest.
max=100 for a rate URL copied
A percentage that is itself the measurement is a value, not a computed share.
A value above max is clamped rather than allowed to overflow its track.
sort=desc URL copied
Non-numeric values URL copied
A cell that is not a number draws no bar but still prints. Missing data stays visible instead of reading as zero.
Next: stack for parts of one whole, or src to read these rows from a file.