A streamgraph is a variation of the stacked area graph. It displays the evolution of a numeric value for several groups. Each group is displayed around a central axis and edges are rounded resulting in a flowing and organic shape.
Matplotlib can build streamgraphs but there isn't any prebuilt function for it so be ready for quite a lot of code. 🍿
The process starts pretty much like for a stacked area graph. The
baseline parameter of the
stackplot() function is used to place groups around the X axis. The tricky part is to interpolate points between each value of the X axis to get the smooth visual. This is done thanks to the
Altair is a lesser know python library for datavizualization.
pandas library has a
divide() function that allows to apply this normalization easily.
From the web
The web is full of astonishing charts made by awesome bloggers, (often using R). The Python graph gallery tries to display (or translate from R) some of the best creations and explain how their source code works. If you want to display your work here, please drop me a word or even better, submit a Pull Request!