在Graphviz中记录节点和rankdir

12

当我将图表的rankdir从LR更改为TD时,我的记录节点也改变了其布局方向,因此它们不再像“记录”一样。我尝试对节点应用单独的rankdir,但这没有任何效果。

如何保持记录节点具有正确的布局?

digraph sample { 
  graph [rankdir=TD];
  node [shape=record];

  A [label="ShouldBeTop | ShouldBeBottom"];
  B [label="Top | Bottom"];
  A -> B;
}
2个回答

13

考虑到rankdir实际上替换了给定图形中“顶部”和“底部”的概念,这并不令人意外。

恐怕没有简单的解决方法,除非通过修改源代码(而这不会很容易)。您可以使用某种大规模搜索替换的解决方案将标签括在“{}”中以获得所需的效果:

digraph sample { graph [rankdir=TD]; node [shape=record];

A [label="{ShouldBeTop | ShouldBeBottom}"]; 
B [label="{Top | Bottom}"]; A -> B; 
}

5

从同一个链接中:基于记录的形状已经被HTML样式标签所取代,并得到了极大的泛化,因此HTML样式标签得到了+1的支持。 - marapet
1
但是类似HTML的表格更加笨重 :( - McKay

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接