Editorial Charts
Long-form chart recipes built from the charts package's marks layer.
Since when are we over the line?
A whole published figure: one line against a labelled threshold, the area between them filled in one colour below and another above, both sides named on the plot, a final-value note, method note, byline, linked source and Get the data.
How do I compare the same measure across regions without a spaghetti chart?
Small-multiple area charts on one shared scale: a dotted network average behind every panel, the same shaded event, and the latest value in each panel title.
How do I show which rows improved and which got worse?
An arrow plot: one arrow per row coloured by direction, percent deltas, a shaded target band and a computed headline.
A category × category matrix drawn as hand-irregular blob bubbles on ruled ledger paper, with a margin note calling out the busiest cell (PeakRing + Marginalia). One-off editorial composition adapted from lieflat-charts' 'L9 Bubble Almanac'.
How do I relate two measures across many items, and name only the outliers?
A bubble scatter on a log axis: size by head count, colour by region with a key, a dashed trend, selective point labels and a text annotation.
How do I show a daily number for a whole year?
A calendar heatmap: weeks as columns, weekdays as rows, six sequential steps and a key that states each range.
How do I compare two distributions on a rating scale?
Two column panels on one shared axis, with the promoter and detractor ranges of the scale shaded and named, and a computed share in each panel title.
How do I see whether slow fills are a size problem or a venue problem?
Every order fill of a trading day, size against latency, with the SLA bands drawn on the latency axis; a range box over the block-trade tail or a drag along the axis reports the SLA share and mean slippage of that slice.
How do I show every one of 200,000 recorded positions against the flight envelope?
A flight-test envelope with every recorded position drawn: 200,000 fixes coloured by the zone of the operational design domain they fall in, solid where dense and single dots when you zoom in, with range and lasso selection totalled in three tiles.
How do I show where on the wafer the failing dies are, not just how many?
A wafer map of 150,000 probed dies coloured by test bin — a scratch and a hot spot become visible that the yield number hides — with lasso selection reporting the fail share and mean threshold voltage of the dies you circle.
Who is ahead, who is behind, and by how much?
A whole published figure: signed horizontal bars from a shared zero line, gains and losses in two colours keyed inside the description, signed value labels, a row note beside the outlier, method note, byline, linked source and Get the data.
When did it turn, and when did it turn back?
A whole published figure: columns above and below zero in two colours whose key is written into the description, a note on the low point, signed axis, method note, byline, linked source and Get the data.
How do I show what one number is made of?
A donut with the total in the hole, outside labels on leaders stating name and share, and small slices folded into Other.
How do I compare the same split at two points in time?
Two donuts under one shared colour key: the year in the hole, shares inside the slices, the same slice order in both.
How do I compare three values per row on one axis?
A dot plot: three dots per row joined by their range, a colour key, a top value axis and rows sorted by the headline value.
How do I show volume and unit cost in one figure?
Columns on the left axis and a line on the right: axes coloured like their series, ticks aligned on shared gridlines, a shaded range, and a table tooltip.
A published table rather than an app grid: a zero-based bar column on one shared range, a diverging heatmap column centred on zero with its own colour key, and a mini-columns column for the quarterly shape — all from data's own cell layer, no charts install. layout="auto" flips it to a card list below 450 px on the same table instance, so the sort bar keeps working. Every visual keeps its value in the accessible tree.
How do I show every number and still let the pattern show first?
A heat table: a depot by weekday matrix with printed values, five sequential steps, a key that states each range and the maximum ringed.
What changed, and since when?
A whole published figure: grey context columns, the columns after the event in the accent colour with value labels, an arrowed note naming the event, method note, byline, linked source and Get the data.
Which few stand out from the many?
A whole published figure: three named, coloured lines in front of a field of thin grey ones, names at the line ends, a note in the series colour, hover that lifts one line, method note, byline, linked source and Get the data.
A funnel redrawn as counted barcode strips (UnitStack) with trickle threads (DrawPath) narrowing between stages, plus stage-to-stage conversion callouts. One-off editorial composition adapted from lieflat-charts' 'L13 Hourglass Stream', built entirely from @elabs-ai/components-charts' marks layer.
What happened, and what did it cost?
A whole published figure: one long weekly line over shaded peak seasons, dashed and dotted event lines, a target line, an arrowed note on the record low, a notes line that explains the shading, byline, linked source and Get the data.
When do they cross, and how much of that is forecast?
A whole published figure: two crossing lines named at their ends, a shaded and labelled plan range in which the lines turn dashed, an arrowed note at the crossing, the colour key written into the description, method note, byline, linked source and Get the data.
Which few causes make up most of the problem?
A Pareto chart: sorted columns on the left axis and the labelled cumulative share on the right, with a computed headline.
Events on a 24 h clock face, density shown by overlaid translucent sectors (fill-opacity 0.07–0.16 — the one sanctioned use of transparency in this system) with rim ticks and a category legend. One-off editorial composition adapted from lieflat-charts' 'L10 Radial Patchwork'.
How wide is the spread, and where is the typical case?
A whole published figure: a range plot drawn with bar overlays — fastest to slowest, the middle half and a median tick per row on one shared axis, with its key above the plot, method note, byline, linked source and Get the data.
How do I show before and after per row, and how much it moved?
A grouped range plot: hollow before, filled after, a signed delta per row, group headers and a top value axis.
Who is at the top, and who is at the bottom?
A whole published figure: ranked horizontal bars on a track to 100 %, the three lowest and three highest rows in colour and the rest as grey context, a colour key above the plot, values inside the bars, method note, byline, linked source and Get the data.
Is this year unusual, and is the decade?
A whole published figure: twenty seasons of daily readings as small dots coloured by decade, two average lines and the current year on top, the colour key carried by the title's own words, two notes on the cloud, method note, byline and linked source.
How big is it next to everything else, and what is it made of?
A whole published figure: one ranked list where the comparison rows are plain grey bars and the rows the story is about are stacked by component, with totals, a colour key, method note, byline, linked source and Get the data.
How do I make a table readable at a glance?
A scorecard table: bar cells, a shaded heat column, category dots, sparklines with the last point emphasised and signed, coloured change.
A DataTable whose trend column renders the charts Sparkline — a target line, a fitted width and a spoken label per row. @elabs-ai/components-data may not import @elabs-ai/components-charts, so this composition is copy-owned rather than a data feature. For a plain in-cell trend that shares one scale down the column, meta.visual: { kind: "sparkline" } is lighter and needs no charts install.
How did one total become another?
A revenue bridge: coloured increases and decreases between two totals, thin connectors, matched-colour labels and a callout on the step that matters.
How do I show a year of monthly changes with quarterly checkpoints?
A horizontal waterfall: monthly steps, automatic quarterly subtotals, a closing total and a plot zoomed to the differences.