D3具有针对严格树的有向图的各种布局,例如:
A
|\
B C
/ \
D E
Run Code Online (Sandbox Code Playgroud)
我需要绘制一个不是树的节点层次结构,但它是一个有向无环图.这是树布局的问题,因为有几个分支会聚:
A
|\
B C
\|
D
Run Code Online (Sandbox Code Playgroud)
有没有人知道一般层次结构的D3布局?或者,一些聪明的黑客攻击现有的treelayout?我注意到GraphVis很好地处理了这种情况,但D3产生的图形更符合这里的要求.
我正在尝试创建一个基于浏览器的工具,让您检查依赖图,因为它们出现在编程语言和Makefile的模块系统中.
我正在寻找一个可视化框架,为我绘制图纸.
要求是工具包可以
可选地,如果它可以很容易地移动节点并突出显示或隐藏图形的某些部分以便更好地概览,那将是很好的.
使用支持的内容并不重要(SVG,画布,一切都很好).
到目前为止,我已经查看了很多库(尤其是JavaScript中的Graph可视化库),但还没找到合适的库:
你知道什么符合我的要求吗?谢谢!
我目前正在使用Graphviz来可视化控制流图.基本上,(可简化的)控制流图是DAG加上一些指向前一层中节点的边.后一条边不应影响节点放置.
目前,dot绘制图形非常整齐,但它缺乏一种简单的方法来添加交互性(例如折叠,滚动,缩放),这对于分析非常大的图形是无价的.因此,我选择d3.js作为最成熟且功能最丰富的图形库.
我很确定在d3.js 中有一种简单的方法来绘制分层图形(如同dot),但我似乎并不认识它.我怎么做?如果这有帮助,我已经对我的CFG进行了支配者分析.
我一直在将我的代码从JIT转换到D3,并使用树形布局.我已经使用我的树数据复制了http://mbostock.github.com/d3/talk/20111018/tree.html中的代码,但我想再做一些.
在我的情况下,我想创建子节点,合并回来形成较低级别的父节点,我意识到更多的是有向图形结构,但是希望树能够适应这种情况(即注意到子节点之间的公共id应该是合并).
所以基本上一棵树在从父母到孩子的路上像正常一样划分,但是也有能力将这些孩子节点聚集在一起成为父母(有点像乱伦的关系:).
问类似的东西 - > 如何使用D3布局非树层次结构
听起来我可以将层次化边缘捆绑与树层次结构布局结合使用,但我还没有看到完成.尽管如此,我可能会稍微偏离一点.