Graphviz:重叠排名 - 使用Graphviz创建程序框图

时间:2015-10-01 11:59:38

标签: block graphviz diagram ranking

我几乎花了一整天时间试图从Graphviz中获取一个方框图。最大的问题似乎是我有垂直和水平排名。显示比说明更容易,因此图表的外观如下:

block_diagram

到目前为止,这是我的Dot-Code:

digraph block_diagram 
{
  graph [ splines=ortho, rankdir=TB];
  node [shape=box, style=filled, fontname=Arial];

  layer_0 [style="rounded,filled", fillcolor="#99ccff", width=15, height=1, label="Layer 0"];

  layer_1 [shape=box, width=5, height=1, label="Layer 1"];
  //emptybox [shape=box,height=1, label=""];
  layer_1_1 [shape=box, width=5, height=1, label="Layer 1_1"];
  layer_2 [shape=box, width=5, height=1, label="Layer 2"];
  layer_3 [shape=box, width=5, height=1, label="Layer 3"];
  layer_4 [shape=box, width=5, height=1, label="Layer 4"];

  application [shape=box, width=3, height=5, label="Application"];

  layer_0 -> { layer_1 application };
  layer_0 -> layer_1 -> layer_1_1 -> layer_2 -> layer_3 -> layer_4;
  application -> { layer_2 layer_3 layer_4 };
}

我尝试对节点进行分组并对它们进行排名,但最后所有节点都具有相同的排名,而且图表看起来不对。

我不知道该怎么做,我希望有人可以帮助我。

P.S。:我也不知道如何创建一个像第1层'

的形状

0 个答案:

没有答案