# A streamgraph in Power BI: watch the make-up change

> Getting started with Stream Plume: prepare a monthly table by channel, insert the visual, read the streams, change the layout and filter the page with one click.

- Language: English
- Web page: https://plumevisuals.com/en/tutorials/stream-plume-prise-en-main
- Published: 2026-10-21
- Visual: Stream Plume, technical reference: https://plumevisuals.com/ai/visuals/stream-graph.md
- If an option name in this tutorial differs from the technical reference, the reference is right (it is generated from the visual's code).

## In short

**What is a streamgraph?** It is a stacked area that floats around a central axis instead of sitting on zero. Each category (a sales channel, a product, an energy source) forms a **stream** whose thickness, at each date, is its value. The total thickness is the month's total; the shape of each stream tells its trend.

Mini example. In January, Web makes $60,000 and Stores $40,000: together the two streams are $100,000 thick, Web takes 60% of it. In June, Web goes up to $90,000 and Stores falls to $30,000: the Web stream thickens, the Stores stream thins, and the whole grows.

- **What the visual does.** Stream Plume draws these streams, puts the largest in the middle, smooths their edges without letting them cross and writes each stream's name where it is thickest. It can also center the streams, show them as 100% or as classic stacked areas, split the chart into small multiples and draws from left to right when shown. With premium (★), it replays time with a cursor (playback), highlights the biggest risers, groups small streams into "Others", shows start and end values, compares to a reference period, places events and gives the ranking at each date during playback.
- **When to use it.** To show **how the make-up of a total changes** over many periods: revenue by channel, energy mix, market shares, tickets by category.
- **When to prefer something else.** To read exact values and compare them, Line Plume (lines) or Bar Plume (bars) are more precise; for a single date, a bar chart or a donut.
- **What you will be able to do.** Prepare a table, insert the visual, read the streams and the size scale, change the layout, filter the page with one click.
- **What you need:** Power BI Desktop, the Stream Plume visual installed (see [the common basics](/en/tutorials/bien-demarrer-visuels-plume)), a table with a date, a category and an amount. The **PlumeStream-Sample-EN** sample report, in your ["Downloads"](/en/account/downloads) area, shows a small business's sales by channel and an energy mix (page 1), four layouts (page 2) and the ★ features (page 3).

## The data to provide

**The shape.** One row per date and per category: the date (or month), the category, the amount. Every category does not need a value at every date: a missing value counts as zero.

| Month | Channel | Amount |
|---|---|---|
| 01/01/2025 | Web | 61,000 |
| 01/01/2025 | Stores | 42,000 |
| 01/01/2025 | Phone | 18,000 |
| 02/01/2025 | Web | 66,000 |
| 02/01/2025 | Stores | 39,000 |
| 02/01/2025 | Phone | 17,500 |
| 03/01/2025 | Web | 72,000 |
| 03/01/2025 | Stores | 37,000 |
| 03/01/2025 | Phone | 19,000 |

To try it without a file: **Modeling › New table**, then paste:

```dax
Sales =
DATATABLE (
    "Month", DATETIME, "Channel", STRING, "Amount", DOUBLE,
    {
        { "2025-01-01", "Web", 61000 }, { "2025-01-01", "Stores", 42000 }, { "2025-01-01", "Phone", 18000 },
        { "2025-02-01", "Web", 66000 }, { "2025-02-01", "Stores", 39000 }, { "2025-02-01", "Phone", 17500 },
        { "2025-03-01", "Web", 72000 }, { "2025-03-01", "Stores", 37000 }, { "2025-03-01", "Phone", 19000 },
        { "2025-04-01", "Web", 70000 }, { "2025-04-01", "Stores", 41000 }, { "2025-04-01", "Phone", 21000 },
        { "2025-05-01", "Web", 78000 }, { "2025-05-01", "Stores", 35000 }, { "2025-05-01", "Phone", 20000 },
        { "2025-06-01", "Web", 90000 }, { "2025-06-01", "Stores", 30000 }, { "2025-06-01", "Phone", 22000 }
    }
)
```

**The measure.** The **Values** well expects a **measure** (a calculation Power BI redoes for each filter, written in DAX; see the [glossary](/en/tutorials/bien-demarrer-visuels-plume#glossary)):

```dax
Revenue = SUM ( Sales[Amount] )   -- adds up the rows of each month and each channel
```

**Pitfalls.**
- Drop the **date column itself**, not the automatic hierarchy (Year › Quarter › Month › Day): click the field's arrow in the well, then choose the column name.
- A streamgraph shows **positive amounts**. A negative value counts as zero (a warning shows in edit mode): for changes, prefer Waterfall Plume or Bar Plume.
- A text category ("Q1 2024", "Q2 2024") works too: it keeps the data order.

## Step by step: your first streamgraph in 10 minutes

1. In the **Visualizations** pane, click the **Stream Plume** icon. An empty frame appears, with a landing page listing the fields to drop; stretch it across the page.
2. Drop the `Month` column into **Time axis**. Check that it is the column and not the hierarchy.
3. Drop `Channel` into **Streams (legend)**, then the `Revenue` measure into **Values**. The streams draw from left to right; each channel's name is written inside its stream.
4. Find the vertical **"↕ …"** marker on the left: this is the **size scale**. A stream as thick as this marker is worth that amount. (Flowing streams have no zero, hence no classic Y axis.)
5. Hover a stream: the others fade and the tooltip gives the month, the value, the share of the total, the channel's rank and the change since the previous month.
6. Open **Format › Streams › Layout** and choose *Stacked areas (from zero)*: the streams sit on zero and a Y axis appears. Try *100% (shares of the total)*, then go back to *Flowing streams (streamgraph)*.
7. In **Format › Stream labels › Content**, choose *Name and total*: each label gives the channel's total over the period.
8. The names are written in the chart: you can remove the legend with **Format › Stream labels › Hide the legend**.
9. Click a stream: the other visuals of the page filter on that channel (cross-filtering, see the [glossary](/en/tutorials/bien-demarrer-visuels-plume#glossary)). Ctrl + click adds another; click an empty area to clear.
10. With the keyboard: Tab to the chart, left and right arrows to browse the months, up and down to change stream, Enter to select, Esc to clear.

**Expected result:** the three channels as flowing streams, Web in the middle getting thicker, names inside the streams, a size scale on the left, and a page filter in one click.

## Troubleshooting

| What you see | Likely cause | Solution |
|---|---|---|
| A single very wide stream, or one stream per year | The date hierarchy is used instead of the column | Field arrow › choose the column name |
| A stream has no label | It is too thin at every date | Expected; its name is in the legend and the tooltip. Lower **Size (minimum when automatic)** |
| "Negative values counted as zero" | The measure returns negative values | A stream cannot be negative: use a positive measure or another visual |
| No Y axis | Flowing and centered streams have no zero | Read the size scale, or switch to *Stacked areas* |
| Streams in a strange order | "Largest in the middle" alternates top and bottom | **Format › Streams › Stream order**: *By total*, *By name* or *Custom order* |
| Too many streams, unreadable chart | Too many categories | Top N and Others ★, or a filter on the categories |
| "Premium preview" watermark | A ★ feature is used without a key | Key in **Format › Plume Studio License**, or a free setting |

## Key takeaways

- One row per date and per category; the date column, not the hierarchy.
- A stream's thickness is its value; the size scale gives the order of magnitude.
- Names are written inside the streams, where they are thickest: the legend becomes optional.
- Flowing, centered, 100% or stacked areas: a single setting, **Format › Streams › Layout**.

## Going further

- [Stream Plume how-to recipes](/en/tutorials/stream-plume-cas-pratiques): recipes for common needs.
- [Stream Plume fields and settings](/en/tutorials/stream-plume-champs-et-reglages): every field well and every setting.
- [Getting started with Plume visuals](/en/tutorials/bien-demarrer-visuels-plume): installation, license, styles and common settings.
- The visual's page: [Stream Plume](/en/visuals/stream-graph). A question: [support](/en/support).
