The spring layout isn't doing a great job with this directed graph and
the hacky code for drawing the labels isn't helping either is it? And
the "arrows" are awfully ugly...
So until we get the Matplotlib drawing code for directed graphs improved
(fix those arrows) my recommendation is to use a graph drawing package
to make prettier drawing. Graphviz (graphviz.org) will probably do a
good job. You can output to a "dot" file that Graphviz can understand
with networkx.write_dot(graph,file).
Aric
The problem is partly that NetworkX has no specific layout algorithms
for directed graphs. I mentioned Graphviz because the "dot" algorithm
would probably do decent job on that graph.
If you can't use Graphviz and can't find any other layout generator
that works well you can always position the nodes yourself or code an
algorithm for that. I'd be willing to help if someone wanted to code
up the dot algorithm:
www.graphviz.org/Documentation/TSE93.pdf
Aric
I might be willing to assist with this also, as it's actually quite a
pain to have GraphViz and all it's required dependencies installed
on a server - even though I do use it for other things to *sigh*
networkx + matplotlib (with no other deps) is nicer though and
more lightweight.
cheers
James