PyGraph: FST Spring Grapher



Pygraph is a pure python implementation of a graphing and layout engine similar to dot and GraphViz, that allows the layout of nodes and edges of directed and undirected graphs. Unlike mfgraph, or yapgvb, or pydot, Pygraph does not require graphviz and dot to be installed. Just include in your source and away you go. Also unlike graphviz, you can manipulate your graphs before you save them. It was needed because it is not always the case that one has the access to compile or link against the graphviz libraries.

Pygraph was originally written for visualizing and manipulating fsa graphs used by pykimmo, a python implementation of pckimmo in NLP.  It became apparent that pygraph was more generally useful, and so it was made into a stand-alone package.  As far as I’m aware it’s used by a network systems group at CMU.

Methods:
PyGraph supports both Spring and Heirarchical models for node positioning.  If your graph is big enough, you can watch it jiggle around as the spring forces settle.
Contribute!  Have improvements?  Email me & I will try to integrate them!
beracah mit edu

Latest Version 1.a

License:
People have asked about the license — it is NOT GPL, because I can’t stand the way the GPL & GNU pollutes real development. (Read rant here) Consider it to be MIT license, or non-commercial license, or something like that.