Bump chart · Diagram Design

The default everyone stopped choosing

Six internal packages ranked by weekly downloads, quarter by quarter. legacy-http entered the year in first place and left it in last; fetch-kit took the top rank in Q2 and never gave it back. Position is the only encoding — the vertical axis is rank, not volume.

The default everyone stopped choosing Bump chart ranking six internal packages by weekly downloads across four quarters; legacy-http slides from first to sixth while fetch-kit takes the top rank in the second quarter and keeps it. RANK BY WEEKLY DOWNLOADS · 1 = MOST Q1 Q2 Q3 Q4 authx #2 #2 authx fetch-kit #3 #1 fetch-kit queuelib #4 #4 queuelib logfmt #5 #3 logfmt schema-gen #6 #5 schema-gen legacy-http #1 #6 legacy-http LEGEND RANKED BY WEEKLY DOWNLOADS, TIES KEEP PRIOR ORDER · SAME MEASURE EVERY QUARTER · ILLUSTRATIVE FIGURES, NOT A MEASURED REGISTRY legacy-http · focal, first to sixth in a year Other packages · opacity records the Q1 order

FOCAL · LEGACY-HTTP

First to sixth in four quarters, and never a sudden drop

One rank, then two more, then two more. No single quarter looks alarming, which is exactly how a default dies — each straight segment joins two measured ranks and says nothing about the weeks between, so the chart claims the decline happened, not when in each quarter it happened.

fetch-kit took first place in Q2 and the line goes flat

A flat line at rank one is the strongest claim a bump chart makes: nothing displaced it for three consecutive snapshots. Note what it does not say — downloads could have doubled or halved in that time. Rank hides magnitude; that trade is the price of reading position at a glance.

schema-gen moved one rank and that is the whole story

Three flat quarters, then a single step up — inherited from legacy-http falling past it, not from growth of its own. A bump chart cannot tell those apart, which is why the footnote names the ranking key: the reader who needs magnitude follows the measure, not the picture.