如何使用Dot和Graphviz循环布局完整的图形?

如何使用Dot和Graphviz循环布局完整的图形?,graph,graphviz,dot,Graph,Graphviz,Dot,如何在图形中“循环”布局节点,类似于下图中的图形: Graphviz提供了圆形布局的功能 circo使用圆形布局绘制图形(参见Six和Tollis,GD'99) 和ALENEX'99,以及Kaufmann和Wiese,GD'02。)该工具识别 双连接的零部件,并在图形上绘制零部件的节点 圆圈然后,使用递归算法布局块切点树 径向算法。圆内的边交叉通过以下方式最小化: 在圆的周长上放置尽可能多的边。在里面 特别是,如果零部件是外平面的,则零部件将具有 平面布局。如果一个节点属于多个非平凡双连通 组件

如何在图形中“循环”布局节点,类似于下图中的图形:

Graphviz提供了圆形布局的功能

circo使用圆形布局绘制图形(参见Six和Tollis,GD'99) 和ALENEX'99,以及Kaufmann和Wiese,GD'02。)该工具识别 双连接的零部件,并在图形上绘制零部件的节点 圆圈然后,使用递归算法布局块切点树 径向算法。圆内的边交叉通过以下方式最小化: 在圆的周长上放置尽可能多的边。在里面 特别是,如果零部件是外平面的,则零部件将具有 平面布局。如果一个节点属于多个非平凡双连通 组件时,布局会将节点放置在其中一个组件中。默认情况下,此 是从根目录中搜索到的第一个非平凡组件 组成部分

K3的一个简单示例是:

graph K3 {
    layout=circo;
    node[shape=point, color=red];
    a--b--c--a;
}
但是,大多数图形的方向与图像上的方向不同。K3示例将产生以下结果:

要在线测试其他布局引擎,可以使用