d3.js,可折叠的树 - 如何将不同的父母与同一个孩子联系起来

时间:2013-12-31 07:19:03

标签: javascript svg d3.js directed-acyclic-graphs

所以我使用http://bl.ocks.org/mbostock/4339083来创建一个可折叠的树,效果很好。

现在问题是我有一些节点具有相同的子节点,所以我想知道是否有任何方法可以将父节点扩展到同一个孩子的方式可视化图形?

所以基本上当你扩展父节点时,它应该自动扩展另一个父节点通向同一个普通子节点的节点,这可能与任何图形一起使用吗?

1 个答案:

答案 0 :(得分:2)

根据您的描述,我认为您需要可视化有向无环图或DAG。

树是:

A
|\
B C
 / \
D   E

DAG是:

A
|\
B C
 \|
  D

而且,不幸的是,D3树和群集布局根本不支持那种图形。他们的内部算法假设数据结构严格地是树。

但是,有一些选择。有关可能的方法,请参阅以下五个相关问题:

d3 tree - parents having same children

How to layout a non-tree hierarchy with D3

d3.js tree nodes with same parents

Layered graphs in d3.js

JS library for displaying direct acyclic graphs (DAGs)