graphviz是贝尔实验室开发的一个开源的工具包,它使用一个特定的DSL(领域特定语言):dot作为脚本语言,然后使用布局引擎来解析此脚本,并完成自动布局。
官网地址: http://www.graphviz.org/
graphviz提供丰富的导出格式,如常用的图片格式,SVG,PDF格式等。
使用 Graphviz 自带的gvedit.exe,用dot语言来编写绘图脚本,产生的效果如下:
当然,graphviz也有一定的局限,比如绘制时序图(序列图)就很难实现。graphviz的节点出现在画布上的位置事实上是不确定的,依赖于所使用的布局算法,而不是在脚本中出现的位置,这可能使刚开始接触graphviz的开发人员有点不适应。graphviz的强项在于自动布局,当图中的顶点和边的数目变得很多的时候,才能很好的体会这一特性的好处:
参考资料:
使用graphviz绘制流程图
http://www.cnblogs.com/CoolJie/archive/2012/07/17/graphviz.html
利用Graphviz 画结构图
http://www.cnblogs.com/sld666666/archive/2010/06/25/1765510.html