图属性

  • label="My Graph";标记图表本身
  • rankdir=LR;将图形从左到右放置,而不是从上到下
  • {rank=same; a, b, c }将节点组合在一起,形成图表的同一级别
  • splines="line";强制边缘是直的,没有曲线或角度
  • K=0.6;用于影响布局中使用的“弹簧”,可用于将节点进一步分开,这对于twopi和sfdp布局特别有用
  • dir=none设置无’箭头’,使用直线连接

顶点属性

  • [label="Some Label"]标记顶点
  • [color="red"]为顶点着色
  • [fillcolor="blue"]使用指定的颜色填充顶点

边缘属性

  • [label="Some Label"]边缘标签(适用于重量)
  • [color="red"]为顶点着色(对路径有用)
  • [penwidth=2.0]调整边线的粗细,对路径非常有用

边缘也可能有一个weight属性,[weight=0.5]例如,定义 ,但请注意,这不会直接显示权重,而是作为图形布局的提示,为此边缘提供更直接的路由。

图表

图形被定义为a graphdigraph 使用相当标准的语法,类似于边缘列表。

graph { node1 -- node2; node3 -- node2; }
digraph { node1 -> node2; node3 -> node2; }

顶点

顶点使用简单的明文标签A, B, C, Test, Vertice1, some_vertex 等定义。如果需要更复杂的标签,可以在定义边之前先声明顶点,并为其指定标签属性,例如:

digraph { someVertex[label="A Complicated Label"]; someVertex -> node2; node2 -> node3; }

边缘

在大多数情况下,边缘的唯一问题是它们的颜色/厚度和标签,因为其余部分由图形/有向图定义自动处理。要为边缘着色,将 颜色属性应用于图形定义,如下所示。
digraph { node1 -> node2[color="red"]; }
要显示权重,我们给顶点本身一个标签,类似于我们标记节点的方式
digraph { node1 -> node2[label="0.2"]; node2 -> node3[label="0.2"]; }
我们实际上可以以这种方式应用我们喜欢的任何标签 digraph { node1 -> node2[label="edge1"]; node2 -> node3[label="edge2"]; }
您可以以任何方式组合这些属性
digraph { node1[label="Some Complicated Label"]; node1 -> node2[label="An Edge",color=red]; node2 -> node3; }

http://graphviz.org/doc/info/attrs.html

posted @ 2018-09-07 14:39:50
评论加载中...

发表评论