Hierarchical Edge Bundles Documentation
Implementation
Our application, an implementation of the paper [1], is written in C++, and is based on OpenGL. For the GUI construction, we use the (non-commercial) Qt libraries.
Data support
We designed our own family tree datasets (.tree). The files are based on XML. They use xml-style tags to define the fields and the relations between the nodes.
There is always one root node and it (and each further node) can have several mother and father nodes. For real human families this will always be at most two, but this is not a restriction given by the implementation of the parser. Each node has to have a unique ID.
The relations-file (.rel) has to contain a relations and rel tag at the beginning and /rel /relations with a pair of id-numbers on each line in between.
Graph (Trees) visualization
The application supports various tree layouts, which we implemented on our own.
- Radial tree layout
- Inverted radial tree layout
- Rooted tree layout
- Inverted rooted tree layout
- Balloon tree layout
These will operate on a tree data structure.
B-Splines for adjacency representation
The tree data structure gives us a convenient access to parent, children and leaf-nodes. To connect two leaf-nodes (A and B), we search for the "deepest" common ancestor (C). We create a point list of all children-nodes of C to use it as control points of a spline connecting the leaf-nodes A and B. Initially, we put all the common ancestors into a queue and process them sequentially. After having processed a leaf-node X, we remove it from the queue. This will prevent from attempts accessing X from other nodes and from creating multiple adjacent paths between two leaf-nodes. Splines' shape in the application is controlled by a parameter beta called bundling parameter. For beta = 1, the adjacent paths are perfectly bounded. For beta = 0, adjacent paths are straight lines. Moreover, the user can adjust alpha gamut of splines to emphasize those, which are shorter (nearer neighbors) and thus more important.
References
[1] Holten D., "Hierarchical Edge Bundles: Visualization of Adjacency Relations in Hierarchical Data", IEEE Transactions on Visualization and Computer Graphics, Vol. 12, No. 5, pp. 741-748, 2006
Generated on Tue Jun 3 21:15:49 2008 for Hierarchical Edge Bundles by
1.5.6