d3.js中的定向非循环图

时间:2014-10-29 17:10:54

标签: d3.js visualization data-visualization directed-acyclic-graphs

今天在D3.js中是否有可靠的绘制有向无环图的方法?我试图想象课程中的先决条件similar to this

我已经看到了类似问题的一些较旧的答案,最有希望的领导是this hack,尽管它对于更大和更复杂的数据集并不能很好地工作。

这是一个罕见的可视化案例,D3不适合吗?

2 个答案:

答案 0 :(得分:16)

您可以尝试dagre,这是一个用于DAG图表的JS库。

如果您出于某种原因想要使用d3,请查看dagre-d3

对于更高级别的方法,请使用上面的所有库来查看at this project

如果d3不是强制性的,请查看at others graphs library。 ;)

2018年9月更新

有一个名为d3-dag

的新库

答案 1 :(得分:3)

迟到但可能与搜索类似信息的其他人有关......

Elkjs支持分层图布局,此时似乎仍在积极维护。

一些建议的布局选项基于OP的用例......

layoutOptions: {
        'org.eclipse.elk.algorithm': 'layered',
        'org.eclipse.elk.direction' : 'DOWN',
        'org.eclipse.elk.edgeRouting': 'SPLINES',
        'org.eclipse.elk.layered.edgeRouting.sloppySplineRouting': false,
        'org.eclipse.elk.layered.layering.strategy': 'INTERACTIVE' }

可以将这些选项粘贴到this interactive editor中,以了解布局如何受到影响。