1.创建图
DOT中使用图(digraph/graph)、节点(node)和边(edge)来描述关系图/流程图。
digraph name1 {
label = "graph";
a;b;
subgraph cluster_sgh {
label = "subgraph";
c;d;
}
}
使用node []和edge []对全局进行设置
digraph graph1 {
node [shape = circle];
edge [style = dashed];
a -> b;
}
2.图属性设置
图的属性设置可以写在graph []里,或者直接写在外面:
digraph graph1 {
bgcolor = red;
graph [bgcolor = red];
}
参数 | 描述 |
---|---|
bgcolor | 背景色,red、blue、green或者#十六位 |
lable | 图的title |
rankdir | 设置图的方向。TB(top to bottom)、BT(bottom to top)、LR(left to right)、RL(right to left) |
roteate | 旋转方向 |
ratio | 长宽比 |
3.节点属性设置
a [shape = egg, label = “this is node a”];
参数 | 描述 |
---|---|
shape | 形状。Mrecord(圆角矩形)、record(矩形)、circle(圆形)、box(矩形,和record略有区别,下面会讲到)、egg(蛋形)、doublecircle(双圆形)、plaintext(纯文本)、 ellipse(椭圆,默认) |
label | 形状title,写在node里面 |
style | 设置样式。filled(填充)、dotted(点状边框)、solid(普通边框)、dashed(虚线边框)、bold(边框加粗)、invis(隐形) |
color | 设置边框的颜色。 |
fillcolor | 设置填充颜色,要设置style=filled |
width | 宽 |
height | 高 |
peripheries | 节点边框个数 |
fontcolor | 节点的内容颜色 |
4.连线的属性
参数 | 描述 |
---|---|
style | solid(实线)、dashed(虚线)、dotted(点线)、bold(加粗)、invis(隐形) |
label | 边标签 |
color | 边的颜色 |
arrowhead | 箭头样式。none、empty、odiamond等 |
5.其他
设置中文字体
// 影响图片级别的字体
graph [fontname="宋体"];
// 影响节点中的文字字体
node [fontname="宋体"];
// 影响箭头或线条上的文字字体
edge [fontname="宋体"];
输出图片,指定字体
dot -Nfontname=simsun -Tpng graph2.gv -o sample.png
参考文献:
https://blog.youkuaiyun.com/jy692405180/article/details/52077979
http://www.cnblogs.com/CoolJie/archive/2012/07/17/graphviz.html
https://blog.youkuaiyun.com/sd10086/article/details/52979462/
https://blog.youkuaiyun.com/RobertChenGuangzhi/article/details/51593567
https://blog.youkuaiyun.com/cclethe/article/details/78745598