1. NodeBox 1
    1. Homepage
    2. NodeBox 3Node-based app for generative design and data visualization
    3. NodeBox OpenGLHardware-accelerated cross-platform graphics library
    4. NodeBox 1Generate 2D visuals using Python code (Mac OS X only)
  2. Gallery
  3. Documentation
  4. Forum
  5. Blog

New Graph library

Posted by Tom De Smedt on Jan 10, 2008



The new Graph library is online. It has better support for creating your own visual styles and some interesting pathfinding and clustering tools. It works in small animations too!

For users of the old Graph library, beware: the API has changed so you will have to rewrite your scripts to be compatible with the new library... sorry for that.

Some background information. As of NodeBox 1.9.2, NodeBox bundles Python 2.5 for compatibility with Mac OS X 10.5 so we needed to recompile Boost in the old library. But the new NodeBox and Boost don't play that well together anymore. Moreover, Douglas Gregor no longer maintains the BGL-Python bindings to make Boost's graphing tools work in Python scripts. So it just seemed like the right time to restart from scratch.

Some of you may wonder why we didn't wrap NetworkX. I find NetworkX perfect for scientists and advanced programmers, but too complex for a lot of NodeBox users who are designers and not programmers. However, we are using centrality algorithms from NetworkX and we hope to improve integration as time goes by.

The new library is pure Python and will attempt to use Psyco specialization (= 2x faster) under NodeBox 1.9.2.

Enjoy! 



Posted by Tom De Smedt on Jan 12, 2008

Update: the latest library download has added functionality for splitting graphs into the different pieces that have no connections, and an additional heuristic parameter for shortest paths like the A* algorithm.