如何使用弯曲节点端点创建Sankey图?

时间:2014-03-12 19:49:32

标签: d3.js sankey-diagram

我使用D3.js and its sankey plugin为我的数据集生成sankey图表。

长话短说,我对插件源进行了一些修改(以获得不同的分支广度),目前看起来像是:

enter image description here

现在我试图让分支曲线向下(和向上),有点像this image from wikipedia减去那个整个环回的事情):

enter image description here

我的问题是,这可能吗?嗯,我知道它可能,它只是一个兔子洞有多大。我之前从未使用过SVG,这是我第一次涉足D3,所以我不太清楚自己是在做什么。

或者,是否有另一个图书馆会产生一个像我一样的图表?我遇到this python library看起来它可能会做我想要的,但我从来没有写过一行Python,如果我可以避免它,我宁愿不(至少今天)。

1 个答案:

答案 0 :(得分:1)

是的,d3.js可能(并且相对容易实现)。

以下是一个例子:

http://bl.ocks.org/cfergus/3921009

您很可能需要调整代码以满足您的需求,但这基本上是您问题的解决方案。

看一下这个随机的Sankey发生器:

http://bl.ocks.org/cfergus/3956043

过了一会儿,你会得到带循环的图表。