Kit extensions

Ridgeline

A joy plot: one overlapping ridge per category over a shared axis, so every shape reads at once

Eric SummersUpdated 2026-09-18markdown

One filled area ridge per category, offset vertically and overlapped so the shape of a measure across a shared x-axis reads for every category at once. Each ridge's height at an x-position is the aggregated measure summed per (category x x). It is taken straight from the worksheet, not a density estimate: the marks are already pre-aggregated, so there are no raw observations left to run a KDE over. A per-render peak scales every ridge to one shared amplitude unit, and an opaque crest stroke tops each translucent body so overlapping ridges stay legible.

Encodings

Tile Role Max What it drives
Category dimension(s) 8 One ridge per distinct value (or combination). Its order sets which ridge sits at which baseline. Unbound Color also colors ridges by this. The selection key. Required. A dimension on the built-in Detail tile joins this key.
X Axis any 1 The shared horizontal axis. Each distinct raw value is one x-position, ordered by raw value; the axis runs from the data's first to last value. A date part, a binned measure, or an ordinal dimension. A continuous measure here collapses each category to one point (the empty state says to bin it or use a date part). Required.
Height continuous measure 1 The ridge amplitude at each x-position, summed per (category x x). Rows with a null measure are skipped. Required.
Color any 1 Optional. A numeric measure gives a sequential ramp (tint to accent). A dimension or date gives the muted palette, and it splits marks (the color value joins the aggregation + selection key). Unbound, each ridge takes its own palette swatch by category.

Configure

Open with the gear (top-right of the viz). Live preview; Done closes, Cancel reverts.

Interact

Click a ridge and its category's marks are selected across all x-positions, so dashboard Filter / Highlight actions fire and cross-filter the other sheets. Click the same ridge again, or empty canvas, to clear. Non-selected ridges dim to grey. Hover shows the category, the x-value under the cursor, that ridge's height there, and the color value. Push-only (it does not react to selections made elsewhere).

Caps

Every trim writes a note in the bottom-right corner. Nothing is truncated silently.

What's different from the kit starter

Get it

Ridgeline ships in the Extension Kit ($59). See it live on the demo gallery.