Surfnet logo

A Web-Based API for Visualizing and Interacting with Trees

This is a completed project.


Tree visualization has widespread application in visualizing hierarchy in dataset. There are many different tree layouts available and each of them has their pros and cons. We observed that despite the large variety of tree drawings, many of the most common ones follow a similar overall process of six stages. We called this process layout pipeline. The different results of this process ranging from implicit, space-filling Treemaps to explicit, node-link radial layouts are is merely due to different layout actions performed at each of these stages. We called these actions layout operators. Using this model of tree layout, it becomes possible for a user to generate countless different tree drawings by plugging different operators or operator sequences in layout pipeline.

Our API use this operator based generation of tree drawing as building blocks. The main goal of the API is to make it easy for the developer to use tree visualization components in their web-based applications while at the same time providing them the flexibility of adapting the layout according to their need. This API also provide supports for different interaction techniques to explore the tree visualization.


Images and Videos


Demos & Software


Tree Visualization API