block by emeeks d8b1c5f7bc975de83d99

Orbital Layout 3

Full Screen

This is an early draft of a hierarchical orbital layout. Like other hierarchical layouts (pack, tree, treemap, etc) It takes nested data annotates it with xy values for display, in this case arranging the data into orbits, with child nodes orbiting parents and the root node at the center.

This example shows the animated layout, like d3.force, animation is initiated with orbit.start(), which adjusts coordinates and fires a “tick” event regularly. You can change the revolution speed with orbit.speed() which sets the number of degrees of shift every 10ms (defaulting to .5 degrees). Currently the speed is the same for all orbits but this should eventually support accessors to set differing speeds.

You can stop the animation with orbit.stop().

index.html