在graphviz中记录节点和rankdir

时间:2008-11-03 17:52:48

标签: graphviz

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

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

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

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

2 个答案:

答案 0 :(得分:11)

考虑到rankdir有效地替换了给定图形的“顶部”和“底部”的概念,这并不奇怪。

我担心没有简单的补救措施,除了黑客攻击源(这根本不容易)。您可以使用某种大规模搜索替换解决方案在“{}”中包围您的标签,以获得所需的效果:

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

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

答案 1 :(得分:5)

您可以像标签一样使用html表而不是记录。 IIRC基于表格的标签不随排名方向旋转。见http://www.graphviz.org/doc/info/shapes.html#html