Graphviz介绍
graphviz是贝尔实验室几个计算机牛人设计的一个开源
的图表(计算机科学中数据结构中的图)可视化项目,主要用C语言实现,主要实现了一些图布局
graphviz提供命令式的绘图方式,它提供一个dot语言
用来编写绘图脚本,然后对这个脚本进行解析,分析出其中的定点,边以及子图,然后根据属性进行绘制。具体的可以看一个例子,这个例子来自官方的文档。
digraph G {
main -> parse -> execute;
main -> init;
main -> cleanup;
execute -> make_string;
execute -> printf
init -> make_string;
main -> printf;
execute -> compare;
}
digraph指定该图是一个有向图(directed
graph),->表示一条边,main,parse,execute等是顶点,运行出来的效果很好看,如下图:
需要注意的是,我在这个dot脚本中没有指定任何的关于图的位置的信息,布局器会自动的根据图形的类型进行布局,并最终展现出来。
再来看一个比较复杂,并且是程序员经常使用的功能,数据结构图:
di