我正在尝试绘制一个具有两种边的图,并且我希望这两种边尽可能地从相对侧链接到每个节点。即,如果类型 A 的边缘从左侧进入,我希望类型 B 的所有边缘都从右侧退出。我知道我可以指定指南针方向,但我希望 graphviz 能够对此进行切换以最大程度地减少图形混乱。
这是可能的吗?或者类似的事情?
如果您不想指定罗盘点,您可能也不想使用标签和端口等 HTML 。
如果您使用 dot,您仍然可以通过使用samehead和sametail属性来实现类似的效果。来自参考:
具有相同头部和相同相同头部值的边瞄准头部上的同一点
这使您可以对传出和传入边缘进行分组。这是一个简单的例子:
digraph g{
rankdir=LR;
edge[samehead=h1, sametail=t1];
a1->b->c1;
a2->b->c2;
edge[samehead=h2, sametail=t2];
a3->b->c3;
a4->b->c4;
}
Run Code Online (Sandbox Code Playgroud)

当然,这只是对边的头和尾进行分组,并不能保证不同类型的边具有相反的边。