2

通过将图定义为 strict 可以将多条边组合在一起。

Graphviz 文档

如果图是严格的,则在相同的节点对之间不允许有多个边。

然而,我感兴趣的是我是否可以定义一些“行为”如何将它们组合在一起。例如,我有兴趣添加一个标签,显示有多少条边已组合在一起,或者更改箭头的粗细。

是否可以直接使用 Graphviz 进行类似的操作?我想我可以自己做预处理,但我不想重新发明轮子。

4

1 回答 1

4

请注意,将边分组在一起实际上定义为:

concentrate="true";

但是您所要求的(添加边缘/箭头的标签或厚度)可以通过向边缘添加属性来轻松完成。例如:

A -> B [penwidth="4.5"];

向边缘添加标签使用相同的“[...]”格式:

A -> B [label="8 edges have been combined"];

有时您可能希望一条线从标签到边缘:

A -> B [label="this is my edge" decorate="true"];

箭头大小也是边缘的一个属性。虽然我没有尝试过这个,但文档说arrowsize是“箭头的乘法比例因子”。我会试试这个:

A -> B [arrowsize="2.0"];

最后,请注意您可以组合属性。例如:

A -> B [label="test" penwidth="5" decorate="true" arrowsize="4.1"];

资料来源: http ://www.graphviz.org/content/attrs

于 2014-08-10T23:52:35.390 回答