Drawing reflexive edges in State Machines
- by reforged
I have to draw a small finite state machine that has some reflexive transitions (meaning the start and the end state of the transition are equal.
The problem is that rendering that in Graphviz has ugly results.
digraph finite_state_machine {
edge [fontsize=11];
S0 - S0 [label = "td=1\n-/e2"];
S0 - S1 [label = "td=3 \n-/e3" ];
S1 - S0 [label = "td=3\n-/-\nt=0"];
S0 - S2 [label = "P:i1/e4"];
S2 - S0 [label = "td=0\n-/-" ];
S0 - S0 [label = "i1/e1\ntd+=1"];
}
Is there a way to make this look a little better?
BTW: I tried head/tailport but they don't work on my version of Graphviz (1.13 on Mac OS X)
I am not limited to the dot engine, I only want a nice looking graph and don't care about the renderer/language.
Thanks a lot