kuva bump

Render a bump chart from a tabular file.

Input format

Three columns: series name, time/condition label, rank (or raw value with --raw-value).

series  time   rank
Alpha   2021   1
Alpha   2022   3
Beta    2021   2
Beta    2022   1
Gamma   2021   3
Gamma   2022   2

Usage

kuva bump [OPTIONS] [INPUT]

Data columns

FlagDefaultDescription
--series <COL>0Series name column (name or 0-based index).
--time <COL>1Time / condition label column.
--rank <COL>2Rank column (pre-ranked data).
--raw-valueoffTreat the rank column as a raw value and auto-compute ranks per time point.
--rank-ascendingoffWith --raw-value: lower value → better (lower) rank number.
--tie-break <MODE>averageTie-breaking for auto-ranking: average, min, max, stable.

Appearance

FlagDefaultDescription
--curve <STYLE>sigmoidLine style: sigmoid or straight.
--rank-labelsoffDraw the rank number inside each dot.
--no-series-labelsoffHide the series name labels at the left/right edges.
--dot-radius <F>6.0Dot radius in pixels.
--stroke-width <F>2.5Line stroke width in pixels.
--highlight <NAME>Highlight one series by name; all others are muted.
--no-legendoffHide the legend.

Examples

# Basic pre-ranked data
kuva bump data.tsv --series series --time year --rank rank -o bump.svg

# Auto-rank from scores (higher = better)
kuva bump scores.tsv --series team --time season --rank score --raw-value -o bump.svg

# Lower score is better (e.g. race times)
kuva bump times.tsv --series athlete --time race --rank time \
    --raw-value --rank-ascending -o bump.svg

# Highlight one series
kuva bump data.tsv --highlight "Alpha" -o bump.svg

# Sigmoid curves with rank labels inside dots
kuva bump data.tsv --curve sigmoid --rank-labels -o bump.svg