d3-plugins icon indicating copy to clipboard operation
d3-plugins copied to clipboard

New options for Sankey plugin

Open billierinaldi opened this issue 13 years ago • 5 comments

I wanted a Sankey diagram where the links overlaps at the sources. The idea I'm trying to capture is that a source node can have some output, and that same output can be used (or read) by multiple target nodes. This patch creates options for whether the links will overlap at their sources or targets.

I also wanted a minimum value for my Sankey nodes and links, so that if I don't know a particular node's value at the beginning, I can still display it with some minimum value and then update it with its actual value later.

billierinaldi avatar Sep 19 '12 23:09 billierinaldi

Can you save me some trouble and link to demos (e.g., using http://bl.ocks.org) of the new features?

mbostock avatar Sep 21 '12 06:09 mbostock

Here's a demo of overlapping links: http://bl.ocks.org/d/3779574/ and a demo of using a minimum value: http://bl.ocks.org/d/3782601/

For the minimum value demo, I loaded two links, one with value 10 and one without a value. I believe the "original" display accurately mimicks the behavior with no minimum value by setting its minValue to 0.

billierinaldi avatar Sep 25 '12 15:09 billierinaldi

Hey, have you had a chance to take a look at the demos? Any thoughts?

billierinaldi avatar Nov 29 '12 18:11 billierinaldi

I like the overlapped idea, but feel like if it could still stack certain paths it might be a little bit easier on the eye.

For instance, take a look at "Thermal Generation". Gas could come after Solid and not cause any vertical spacing issues. A better example would be "Electricity Grid". All of those tiny lines get crushed together to form a dark blob. If they were rotated down until they fill the height, then add another level and rotate down again, I think the visualization would be better.

Great job BTW!

tuckerpm avatar Apr 29 '13 20:04 tuckerpm

I just created a variation of the D3.js Sankey diagram to visualize the many-to-many relationships between the stacks of the entities, that I want to use for enterprise architecture application. Here is the gist:

https://gist.github.com/colinyzhao/5649114

and the demo

http://bl.ocks.org/colinyzhao/5649114

The height of the node is based on node value. The link has two values, sourceCount (value) and targetCount. The node has three more fields to further constraint the width of the link/path calculation. Link can overlap at the source and target node.

colinyzhao avatar May 25 '13 19:05 colinyzhao