Visualization of large tree structures

This project is about fast interactive visualization of large data structures organized in a tree.

This is an experimental software. If you have a feature request, or if you want to honour my work, send me an Amazon gift card or a donation.

Project Goals

  • Visualize the data structure in a way which allows to get an overview of the data structure within a short time.
  • Provide guidance which allows to quickly drill down into points of interest in the data structure. 
  • Render the data structure fast enough so that real-time navigation is possible.

Implemented Diagrams

The project currently consists of a file browser demo, which visualizes the file system with the following tree diagrams:

  • Hyperbolic Tree
  • Circular Treemap
  • Rectangular Treemap
  • Sunburst Tree
  • Icicle Tree
  • Sunray Tree
  • Iceray Tree

Screenshots

The following pictures show all the same data set:

Circular Treemap:

Treeviz - Circular Treemap

Rectangular Treemap:

Treeviz - Rectangular Treemap

Sunburst Tree:

Treeviz - Sunburst Tree

Icicle Tree:

Treeviz - Icicle Tree

Sunray Tree:

Treeviz - Sunray Tree

Iceray Tree:

Treeviz - Iceray Tree

Hyperbolic Tree:

Treeviz - Hyperbolic Tree

About the Hyperbolic Tree

The source code for the hyperbolic tree is based on the Hypertree project at Sourceforge.net, with the following changes:

  • The children of a tree node are sorted alphabetically.
  • Tree edges and tree nodes are color coded by the age of the file that they represent. New files are red, very old files are blue.
  • Tree edges and tree nodes are sized differently according to the size of the files and directories that the represent.
  • The tree is pruned to allow faster rendering. Pruning occurs when there is not enough visual space left for a subtree.
  • During interaction and animation, antialiasing is disabled to reduce latency.
  • The rendering of edges and tree nodes is performed in two separate threads, to take advantage of computers with multiple processing units.
© Werner Randelshofer. All rights reserved.