Graphviz简介
本文为译文,点击 此处查看原文。
Graphviz – Graph Visualization Software(图形可视化软件)
1. 图形可视化
2. Roadmap
- dot – 绘制有向图的 “hierarchical” 或 layered 绘图。布局算法的目标是边在相同的方向(从上到下,或从左到右),然后试图避免边交叉和减少边长度。

- neato – “spring model”布局。如果图形不是太大(大约100个节点),而且您对它一无所知,那么这是默认使用的工具。Neato试图最小化一个全局 energy 函数,这相当于统计多维尺度。虽然旧的Kamada-Kawai算法(使用最速下降法)也是可用的,但是我们使用了压力优化法实现了该解决方案。

- fdp – 类似于neato的“spring model”布局,但这是通过减少 forces,而不是与 energy 的工作。Fdp实现了Fruchterman-Reingold启发式方法,包括一个多网格求解器,它处理较大的图和集群无向图。

- sfdp – 多尺度版本的fdp,用于大型图形的布局。

- twopi – 径向布局,在 Graham Wills 97 之后。节点被放置在同心圆上,这取决于它们与给定根节点的距离。您可以设置根节点,或者让 twopi 来做。

- circo – 圆形布局,在 Six and Tollis 99, Kauffman and Wiese 02 之后。这适用于多个循环结构的特定图表,例如某些电信网络。

3. 图形查看器
- dotty – 一个老式的可定制Unix/X windows查看器,后来被移植到Microsoft windows。
- tcldot – Graphviz的TCL/TK脚本语言扩展
- Webdot – 一个tcldot脚本化的WWW服务,用于HTML文档中的图形。
还有一个用 perl 编写的简化版本。 - Grappa – 一个用于具有完整Java图形数据结构的图形的Java包
- ZGRViewer- 一个基于svg的大型图形缩放图查看器。
- Mac OS X graphviz
- viz.js – graphviz使用emscripten构建,可以在web和node.js中使用
4. Filters
gvpr是一种通用的图形流编辑器,具有awk、sed的精华(如果您不了解这些,可以考虑perl)。
5. 示例应用程序
- 软件文档:由 doxygen 和 dot 自动生成的漂亮图表。
- WWW图形服务器:有关Graphviz的WWW应用程序,请参阅Webdot。
- Google Charts Graphviz API。
- Canviz,一个HTML5 canvas Javascript库。
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/224307.html原文链接:https://javaforall.net
