7

我正在构建一个 CFG(上下文无关语法),我希望退出节点始终位于图表的底部。有时它会自然发生,有时则不会。

例子:

digraph G {
  0;
  1;
  4;
  5;
  7;
  8;
  0 -> 4;
  5 -> 7;
  7 -> 8;
  7 -> 1;
  8 -> 5;
  4 -> 7;
}

绘制(使用点):

替代文字

节点 1 是我的出口节点,我希望它位于底部。建议?

4

2 回答 2

14

对子图使用等级规范。在这种情况下, sink应该位于底部,max将使其与 5 处于同一水平:

digraph G {
  0;
  { rank = sink; 1; }
  5;
  4;
  7;
  8;
  0 -> 4;
  5 -> 7;
  7 -> 8;
  7 -> 1;
  8 -> 5;
  4 -> 7;
}
于 2009-09-18T20:15:23.247 回答
-2

DOT 中尝试选项“-y”

-y          - Invert y coordinate in output
于 2009-09-18T19:51:02.310 回答