有时我需要可视化依赖/依赖结构。例如函数调用、数据结构等。
对于相对较小的图, Graphviz dot
是一个很好的匹配。的输入格式dot
很容易生成,并且可以产生良好的布局。
但有时图形包含太多顶点和依赖项,无法用作静态 PDF 文档。为此,我想使用交互式图形查看器,我可以在其中动态选择一个主顶点(或两个,限制显示的连接),临时隐藏顶点/边以使图形更易于访问,放大/缩小等。
对于这种交互式工具,我的开源替代方案是什么?
有时我需要可视化依赖/依赖结构。例如函数调用、数据结构等。
对于相对较小的图, Graphviz dot
是一个很好的匹配。的输入格式dot
很容易生成,并且可以产生良好的布局。
但有时图形包含太多顶点和依赖项,无法用作静态 PDF 文档。为此,我想使用交互式图形查看器,我可以在其中动态选择一个主顶点(或两个,限制显示的连接),临时隐藏顶点/边以使图形更易于访问,放大/缩小等。
对于这种交互式工具,我的开源替代方案是什么?
引用长长的列表(来自Paul Sweatte的评论):
InfoVis Toolkit – InfoVis Toolkit 是一个用 Java 编写的交互式图形工具包,用于简化信息可视化应用程序和组件的开发
Prefuse – Prefuse 是一个用户界面工具包,用于构建结构化和非结构化数据的高度交互式可视化。这包括可以表示为一组实体(或节点)的任何形式的数据,这些实体(或节点)可能由任意数量的关系(或边)连接。prefuse 支持的数据示例包括层次结构(组织结构图、分类法、文件系统)、网络(计算机网络、社交网络、网站链接),甚至是非连接的数据集合(时间线、散点图)。另请参阅 Prefuse ( http://jheer.org/ )
树形- Treebolic 是一个 Java 组件(小部件),其目的是提供分层数据的双曲线呈现。一棵树用节点和边缘渲染,但显示空间受特定曲率的影响(因此得名):分配给焦点节点的空间更多,而仍在直接视觉上下文中的父节点和子节点看起来略小。祖父母和孙子孙女仍然可见,但显得更小。当我们远离焦点节点时,分配给节点的显示空间越来越少,这些空间逐渐向磁盘的边界消失,就好像整个层次结构都是通过鱼眼镜头看到的。包装为 Java 小程序,Treebolic 小部件可以嵌入到网页中。然后节点可能包含超文本链接和其他网页的浏览器。
Walrus – Walrus 是一种用于在 3D 空间中交互式可视化大型有向图的工具。通过采用类似鱼眼的失真,它提供了一个同时显示局部细节和全局上下文的显示。技术上可以显示包含一百万个或更多节点的图形,但是随着节点数量或它们的连接程度的增加,视觉混乱、遮挡和其他因素会降低海象的有效性。因此,在实践中,Walrus 最适合可视化接近树的中等大小的图。具有几十万个节点且链接数量略多的图可能是最佳目标大小