Hi, Jochen from Rerun here (@grtlr on GitHub)! I implemented most of the graph view, including Fjädra [0], our Rust port of the excellent d3-force [1].
In the future we want to provide more types of layouts, dataflow is high up on that list. May I ask what kind of data you want to visualize? Since you mentioned Sankeys, in your case does the structure of the Sankey change as well, or do you only expect the edges to grow/shrink over time?
Thank you for your reply. I am thinking about variable dataflows through a fixed set of nodes -- so, the latter, growing and shrinking edges. The application would be visualizing system dynamics. The stages in the Sankey would be organized by degree of distance from an "intervention" node.
That's very interesting! We're currently working on the plumbing to be able to assign attributes to edges as well—right now it's only possible to style/configure the nodes.
Once we have that though, there is another approach that you can take before you go down the path of writing your own visualizer/view: you can also log custom positions for each node. Since the node positions don't change in your case that might get you quite far by statically logging the nodes with a Sankey layout computed by your application.
For us it was a mixture of multiple things: It’s a very mature library that has been stable over the last years and became the de facto standard in web-based visualizations, where—just as in Rerun—interactivity plays an important role. The predefined forces that ship with it make it very flexible and are easily extensible. Finally, having worked with it a fair amount in the past, personal preferences surely played their part as well.