Streamgraph
A streamgraph, or stream graph, is a type of stacked area graph which is displaced around a central axis, resulting in a flowing, organic shape. Unlike a traditional stacked area graph in which the layers are stacked on top of an axis, in a streamgraph the layers are positioned to minimize their "wiggle". More formally, the layers are displaced to minimize the sum of the squared slopes of each layer, weighted by the area of the layer.[1] Streamgraphs display data with only positive values, and are not able to represent both negative and positive values.[2]
Streamgraphs and their use were popularized by
A related graph, sometimes conflated with streamgraphs, is the ThemeRiver, in which the "silhouette" of the graph is symmetrically arranged around the central axis.[1]
Streamgraphs were found to be more readable than basic stacked area graphs or ThemeRivers for value comparison tasks.[5]
Streamgraphs are officially supported by Matplotlib[6] and D3.js.[7]
Marco Di Bartolomeo and Yifan Hu (2016) propose several improvements to streamgraphs, such as using
References
- ^ S2CID 15281429.
- ^ S2CID 17724977.
- ^ Matthew Bloch; Lee Byron; Shan Carter; Amanda Cox (23 February 2008). "The Ebb and Flow of Movies: Box Office Receipts 1986–2007". The New York Times. Retrieved 24 July 2012.
- ISSN 0362-4331. Retrieved 2021-04-24.
- ISBN 978-0-9947868-1-4.
- ^ "matplotlib.axes.Axes.stackplot — Matplotlib 3.1.2 documentation". matplotlib.org. Retrieved 2020-10-06.
- ^ "d3/d3-shape". GitHub. Retrieved 2020-10-06.
External links
- Lee Byron's streamgraph_generator
- RAWGraphs Open-source visualization tool easing streamgraph generation.
- StreamGraph Open-source javascript for generating a streamgraph in SVG.