如何在 Graphviz 中制作圆形图?
How can I make a circular graph in Graphviz?
我在 graphviz 中有以下图表:
由这段代码生成:
digraph finite_state_machine {
rankdir=TB;
node [shape = none]; Start;
node [shape = circle];
nodesep=.5;
Start -> A;
A->B
B->C
C->D
D->E
E->F
F->G
G->H
H->I
I->A
{rank = same; A B C D}
{rank = same; E}
{rank = same; F G H I}
}
我怎样才能改变那些底线的方向,让它看起来像那样?
一个有 8 个节点的例子(从你的图中看不清楚第 9 个节点放在哪里):
digraph finite_state_machine {
rankdir=TB;
node [shape = none]; Start;
node [shape = circle];
nodesep=.5;
Start -> A;
A->B
B->C
C->D
D->E
F->E [dir=back]
G->F [dir=back]
H->G [dir=back]
A->H [dir=back]
{rank = same; A B C }
{rank = same; E F G }
}
作为替代方法,您可以为此图表使用与 dot
不同的布局引擎。
circo
好像特别合适,结果是这样的:
当然,您可以尝试其他引擎(neato
也可以)。
我在 graphviz 中有以下图表:
由这段代码生成:
digraph finite_state_machine {
rankdir=TB;
node [shape = none]; Start;
node [shape = circle];
nodesep=.5;
Start -> A;
A->B
B->C
C->D
D->E
E->F
F->G
G->H
H->I
I->A
{rank = same; A B C D}
{rank = same; E}
{rank = same; F G H I}
}
我怎样才能改变那些底线的方向,让它看起来像那样?
一个有 8 个节点的例子(从你的图中看不清楚第 9 个节点放在哪里):
digraph finite_state_machine {
rankdir=TB;
node [shape = none]; Start;
node [shape = circle];
nodesep=.5;
Start -> A;
A->B
B->C
C->D
D->E
F->E [dir=back]
G->F [dir=back]
H->G [dir=back]
A->H [dir=back]
{rank = same; A B C }
{rank = same; E F G }
}
作为替代方法,您可以为此图表使用与 dot
不同的布局引擎。
circo
好像特别合适,结果是这样的:
当然,您可以尝试其他引擎(neato
也可以)。