Part of a whole

Streamgraph

Displays stacked component magnitudes around a centred or optimised baseline.

  • Chart
  • Composition
  • Trend over time

What it answers

How do component volumes swell and shrink?

Shape
Flowing bands around a varying baseline
What it shows
Emerging and declining components.

Example

The question

Which product categories swell and shrink through the seasons?

Units sold per week by category (streamgraph)

Units sold per week by category (streamgraph)Bands sit around a centre line, thickness shows units. Outdoor peaks in spring, garden in summer, gifts towards the end of the year, kitchen stays steady.OutdoorGardenKitchenGiftsJanMarMayJulSepNov
Units sold per week by category (streamgraph)Bands sit around a centre line, thickness shows units. Outdoor peaks in spring, garden in summer, gifts towards the end of the year, kitchen stays steady.OutdoorGardenKitchenGiftsJanMarMayJulSepNov
Bands sit around a centre line, thickness shows units. Outdoor peaks in spring, garden in summer, gifts towards the end of the year, kitchen stays steady.

Illustrative data. It belongs to no company.

When to use it

Use it when

Overview of changing composition with flowing shapes.

Avoid it when

When exact value reading or a shared baseline is needed.

How to read it

Follow a labelled band and read thickness, not absolute vertical position.

Note

Band boundaries do not share a zero baseline.

The data you need

Layout
Long table
Fields
Time: date/datetime; Series: text; Value: number
One row is
One series observation at one time. What is the grain?
Rules
Sort time within series. Resolve duplicate time-series pairs and align series before stacking.
Optional
Wide alternative: Time,A,B with one row per time.
Preparation
Align component series, check valid stacking values and choose a documented streamgraph baseline.
Units
Time uses a stated date/time unit and sampling period; the value axis uses the measure's unit. Rates need their own explicit denominator.
Example of the input layout: Long tableA long table: one row per observation, few columns. New data adds rows.TimeSeriesValueAABBC
A long table: one row per observation, few columns. New data adds rows.

Worked example

Data Jan: A30, B45; Feb: A34, B40. A's band thickens and B's thins. The shifting baseline is a layout device.

TimeSeriesValue
2026-01-01A30
2026-01-01B45
2026-02-01A34
2026-02-01B40