A Stream graph is really close from a stacked area chart. It displays the evolution of a numerical value (Y axis) following another numerical value (X axis). This evolution is represented for several groups, all with a distinct color. Contrary to

a stacked area, there is no corner: edges are rounded what gives this nice impression of flow. Stream chart get really useful when displayed in an interactive mode: highlighting a group gives you directly an insight of its

evolution. Currently, the only tool i know to realise stream chart is the Altair library. Feel free to propose an example if you have one. I highly recommend to have a look to the R graph gallery to find a solution.

Input format

Format 1: 1 discrete variable + 1 numerical variable (for the X axis) + 1 categorical (gives the groups). This is the ‘long‘ format.


Format 2: 1 discrete variable + several numerical variable (one per group). This is the ‘wide‘ format.





The Altair python library is the only tool I know allowing to make a streamschart yet. See how to install it here. Unfortunately the gallery do not display example of code yet. However, you can visit this page that gives the code that makes the adjacent figure.