This entry is part of the Chart Index, the reference library for the Chart Design Field Guide.
The bump chart is a slope chart with more than two time points and a ranked y-axis. Each category becomes a line; the line's vertical position at each time is its rank, not its value. Where lines cross, ranks have swapped. The form is built for one task: who climbed, who fell, who held, and when?
It is the chart that powers league tables, championship standings, and music chart histories. Billboard's weekly Top 40 visualised over a year is the canonical example. The form fails when you care about absolute values — how much did the leader win by? — and excels when the relative order is the story.
What it is
A bump chart maps a continuous variable (usually time) to the x-axis and rank to the y-axis. Each category is a line passing through one point per time step, where the y-coordinate is the category's rank at that time. Smooth curves replace straight segments at the crossings to convey the swap. The result is a tangle of lines whose crossings carry the meaning.
The hero chart above is twelve weeks of a podcast chart: eight shows, ranked every week by downloads, rank 1 at the top. The Long Lunch starts the year on top and slides to fifth; Wide Brown Land starts fifth and is number one by week seven; Sundowner climbs from the bottom to third. Each of those stories is a single line that can be traced from its left label to its right label, and each crossing along the way is a specific week in which two shows swapped places. Randomise it and every week's ranks are reshuffled — the lines re-route, the labels at both ends move with them, and the form still reads.
When to use it
Bump charts are the right choice when:
- The reader's question is "who is leading, and who has overtaken whom?" — ranking matters more than absolute values.
- You have multiple categories ranked over multiple time points.
- The number of categories is 5–15. Beyond that the lines tangle.
- You have stable category membership — the same items being ranked at every time point.
- The changes in rank are visually distinguishable across the time range.
When not to use it
- Absolute value reading. Rank ignores magnitude — the gap between rank 1 and rank 2 might be enormous or trivial. Pair with values if magnitude matters.
- Many categories. Twenty crossing lines is a knot. Filter to the top N, use small multiples, or switch form.
- Frequent ties. Real data has ties (two products with the same revenue); bump charts assume strict order. Define a tiebreaker and document it.
- Sparse time points. A bump chart with three time points is just a slope chart. Use that.
Design principles
Use straight segments or gentle curves
Two conventions exist: straight lines (cleaner, easier to follow) and smoothed curves (more readable when many lines cross at the same time point). Pick one and apply it consistently. Avoid Bézier flourishes — the smoothing should aid reading, not decorate. The house renderer uses a gentle ease at each step so that a flat run reads as held and a crossing reads as swapped.
Highlight the lines that move
In a typical bump chart, two or three lines carry the story (a leader who fell, a challenger who rose). Give those lines the accent colour; let the rest fade to neutral grey. The eye finds the story without effort. The two figures below rank the same eight product lines by monthly revenue; only the colours differ.
Label every line at both endpoints
Each line's left and right endpoint deserves a category label. The reader reads the start label, follows the line, and confirms the end label. No legend — direct labels at both ends. Every bump chart on this page is labelled that way, and the label at the right end doubles as the current standing.
Keep the count of lines readable
Fifteen is the practical ceiling, and it is a ceiling, not a target. Beyond it the crossings outnumber the lines and the eye cannot hold a single trajectory across the plot.
Use larger dots at the time points
A circle at each rank-time intersection helps the eye land on a specific time. Without dots, the eye has to extrapolate from a line; with dots, the rank at any month is the dot's vertical position.
Annotate the crossings that matter
A line crossing is the chart's most expressive moment. Mark the crossings that tell the story: Product X overtook Product Y in April. Short text annotations near the crossing, not in a separate legend.
Reverse the y-axis (rank 1 at top)
By convention, rank 1 is the top of the chart, not the bottom. The y-axis reads downward from 1 to N. This matches the natural reading of first place at the top.
Know when it is a slope chart
Three time points is the floor. Below that the crossings have nowhere to happen, and the honest form is a slope chart, which draws the same before-and-after with values instead of ranks.
Show absolute values alongside if they matter
If readers need to know magnitudes too, place a small inline value next to each endpoint dot, or pair the bump chart with a multi-line value chart — as the figure under When not to use it does for the hero — or with an area bump, which thickens each line by its value.
Anatomy
A bump chart's anatomy is a polyline per category, vertical position carrying rank, dots at each time point, and labels at both ends. The crossings are the data; quiet everything else.
Related types
- Slope chart — bump chart with two time points.
- Area bump — the same rank lines thickened by value, for when magnitude matters too.
- Line chart — same lines, value-based y-axis instead of rank.
- Parallel coordinates — same crossing-lines idea applied to multivariate comparison instead of time.
- Streamgraph — stacked area for compositional change over time; different question.
- Connected dot plot — for the same rank-change idea with a discrete x-axis.
Reading list
- Robbins, N. (2005). Creating More Effective Graphs. On the design of ranked-comparison charts.
- Bertin, J. (1967). Semiology of Graphics. The original framework for visual-variable choice that bump charts exploit.
- Few, S. (2012). Show Me the Numbers. On ranking displays and the limits of the line.