Module graphopt
[show private | hide private]
[frames | no frames]

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.

Variable Summary
tuple __author__ = ('Dug Song <dugsong@monkey.org>', 'Michael ...
tuple __copyright__ = ('Copyright (c) 2005 Dug Song <dugsong@m...
str __license__ = 'GPL'
str __url__ = 'http://monkey.org/~dugsong/pygraphopt/'
str __version__ = '0.1'

Variable Details

__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:
'GPL'                                                                  

__url__

Type:
str
Value:
'http://monkey.org/~dugsong/pygraphopt/'                               

__version__

Type:
str
Value:
'0.1'                                                                  

Generated by Epydoc 2.1 on Thu Jan 26 12:04:09 2006 http://epydoc.sf.net