Module graphopt
graph layout optimizer
In contrast to Graphviz and other graph optimizers, graphopt does not
use a finite-pass approach to layout optimization. Instead, it uses
basic principles of physics to iteratively determine an optimal
layout.
Each node is given mass and an electric charge, and each edge is
represented as a spring. Node mass, electric charge, optimal spring
length, and the spring constant are all configurable.
For most graphs, this is all that is needed - the graph organizes
itself much as the analagous real-life system would if constrained to
two dimensions. For more complex graphs, some fiddling with the
physical parameters at different stages of optimization usually does
the trick.
Graphs can be imported using a subset of the dot format from AT&T
Research and Lucent Bell Labs' Graphviz tools, and can be exported as
Postscript or in a Visio-importable format.
Classes |
graphopt |
Graph object with physics model for optimized layout. |
__author__
-
- Type:
-
tuple
- Value:
('Dug Song <dugsong@monkey.org>', 'Michael Schmuhl <michael@schmuhl.or\
g>')
|
|
__copyright__
-
- Type:
-
tuple
- Value:
('Copyright (c) 2005 Dug Song <dugsong@monkey.org>',
'Copyright (c) 2000-2003 Michael Schmuhl <michael@schmuhl.org>')
|
|
__license__
-
- Type:
-
str
- Value:
|
__url__
-
- Type:
-
str
- Value:
'http://monkey.org/~dugsong/pygraphopt/'
|
|
__version__
-
- Type:
-
str
- Value:
|