B -6ren">
gpt4 book ai didi

graph - 强制节点直接位于另一个节点下方

转载 作者:行者123 更新时间:2023-12-04 17:37:19 25 4
gpt4 key购买 nike

我有一个从左到右排列的图表。但是,我希望该图中的某些元素相对于另一个节点进行定位。例如,如果我有这个图:

digraph "Test" {
rankdir = "LR"
A -> B
B -> C
D -> B
note -> B

note [ shape="house" ]
};

它呈现如下:

Normal DOT layout

但是,我希望“note”节点始终直接位于它所指向的节点下方,如下图(手动创建):

Desired DOT layout

我试过用不同的 rankdir 来试验一个子图和摆弄 rankconstraint属性,但未能成功使其发挥作用,因为我只玩了几天 DOT。

最佳答案

您可以在定义边之前枚举节点,然后约束节点 B到与节点 note 相同的等级通过将它们放在子图中:

digraph "Test" {
rankdir = "LR"
A;D;
{rank=same; note; B;}
C;

A -> B
B -> C
D -> B
B -> note [dir=back]

note [ shape="house" ]
};

请注意,为了让节点 note节点下方 B ,我不得不反转边缘方向并添加 dir=back正确绘制箭头。

graphviz output

关于graph - 强制节点直接位于另一个节点下方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14098784/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com