由于实验的需要生成树状图,经老师推荐使用graphviz,然后接触到了dot,有种相见恨晚的感觉,dot特别适合编程人员使用,而且生成的图形特别可爱~
如果学过C语言的话,就很容易掌握dot啦,其中的标识符完全采用的是C的风格,dot完全属于描述性语言,只需要把你想要的图形给描述出来,graphviz就可以自动生成图形,而且图形的大小和布局是经过优化的,完全不用自己去做布局了。
dot中主要成分为:图、节点、边
下面是dot的例码:
digraph G
{
main [shape=box,label="main1"];
init [label="main1"];
main -> parse -> execute;
main -> init [weight=2];
main -> cleanup [style=dotted];
execute -> make_string;
execute -> printf
init -> make_string;
main -> printf;
edge [color=red];
execute -> compare [style=bold,label="100 times"];
node [shape=box,style=filled,color=".7 .3 1.0"];
main->Cheez->Success->"ok, utf8 chars \nare not supported!";
edge [color=black];
Success->main;
}
然后使用graphviz可以将之生成为pdf、ps、png、gif、svg中的任何一种格式,例如生成png的命令如下:
dot -Tpng test.dot -o test.png
下面是生成的图片:
怎么样,清新可爱吧~