在 Dot/Graphviz 中使用分支之间的连接时保持树布局

Keeping Tree layout when using connections between branches in Dot/Graphviz

我目前正在实施频繁模式树。对于可视化,我正在使用 dot/graphviz(尤其是 wintersleep-graphviz 0.1,但现在我们不应该关心它),到目前为止工作正常。

可视化节点链接(分支之间的连接)时,树布局会中断。我怎样才能避免这种情况?

示例: Ordinary Tree 代码:

#!/bin/env dot
digraph FrequentPatternTree30 {
# attributeListListList:

# attributeList:


# child graphs:
# nodes:
30 [label="root"]
31 [label="f:4"]
32 [label="c:2"]
34 [label="c:1"]
33 [label="b:2"]
35 [label="b:1"]

# edges:
30 -> 31
 ;
31 -> 32
 ;
30 -> 34
 ;
32 -> 33
 ;
34 -> 35
 ;
}

Tree with Node Links 代码:

#!/bin/env dot
digraph FrequentPatternTree30 {
# attributeListListList:

# attributeList:


# child graphs:
# nodes:
30 [label="root"]
31 [label="f:4"]
32 [label="c:2"]
34 [label="c:1"]
33 [label="b:2"]
35 [label="b:1"]

# edges:
30 -> 31
 ;
31 -> 32
 ;
30 -> 34
 ;
32 -> 34
 [style="dotted"];
32 -> 33
 ;
34 -> 35
 ;
33 -> 35
 [style="dotted"];
}

很抱歉,如果示例图片显示不正确,但我的声誉仍然太低。

您可以尝试添加属性为 constraint=false 的边,以免它们影响节点的排名。