1

graphviz是贝尔实验室几个计算机牛人设计的一个开源 的图表(计算机科学中数据结构中的图)可视化项目,主要用C语言实现,主要实现了一些图布局算法。通过这些算法,可以将图中的节点在画布上比较均匀的分布,缩短节点之间的边长,并且尽量的减少边的交叉。

graphviz提供命令式的绘图方式,它提供一个dot语言 用来编写绘图脚本,然后对这个脚本进行解析,分析出其中的定点,边以及子图,然后根据属性进行绘制。具体的可以看一个例子,这个例子来自官方的文档。

下载

window: 直接下载http://graphviz.org/pub/graphviz/stable/windows/graphviz-2.38.msi
建立环境变量
cmd: dot --help // 能看到相关的命令

第一个demo

digraph G{

     size = "4, 4";//图片大小
     main[shape=box];/*形状*/

     main->parse;
     parse->execute;

     main->init[style = dotted];//虚线

     main->cleanup;

     execute->{make_string; printf}//连接两个

     init->make_string;

     edge[color = red]; // 连接线的颜色

     main->printf[style=bold, label="100 times"];//线的 label

     make_string[label = "make a\nstring"]// \n, 这个node的label,注意和上一行的区别

     node[shape = box, style = filled, color = ".7.3 1.0"];//一个node的属性

     execute->compare;

}

执行:dot -Tjpg aaa.dot -o aaa.jpg

生成svg: dot -Tsvg aaa.dot -o aaa.svg

请输入图片描述


小渝人儿
1.1k 声望849 粉丝

前端工程师


引用和评论

0 条评论