New Javascript/Canvas Graph library

Aslak Hellesøy and Dave Hoover have put together a JavaScript library that can draw interactive graphs (as in nodes, not as in charts).

The library currently has three functional layers:

  • The graph model (Graph, Node and edges)
  • Layout algorithms: (Graph.Layout.*)
  • Rendering schemes: (Graph.Renderer.*)

Usage

var g = new Graph();

g.addEdge($('fred'), $('wilma'));
g.addEdge($('wilma'), $('dino'));
g.addEdge($('fred'), $('barney'));
g.addEdge($('wilma'), $('barney'));
g.addEdge($('aslak'), $('fred'));
g.addEdge($('aslak'), $('dave'));
g.addEdge($('patty'), $('aslak'));
g.addEdge($('barney'), $('patty'));

var layouter = new Graph.Layout.Spring(g);
layouter.layout();

var renderer = new Graph.Renderer.Basic($('people'), g);
renderer.draw();
 

Canvas Graph Library

In related news, Benjamin Joffe posted an example on writing to a canvas element.

Wow free space!
Super hosting provider might be here!

Is it Google?