Institut für Computergraphik und Algorithmen
Abteilung für Computergraphik

Informationsvisualisierung VO & UE

SS 2004 VO 2.0, 186.141
SS 2004 UE 1.0, 186.143

Daniel Scherzer
Florian Schulz


Treemaps are a good visualization technique for visualizing huge and hierarchical information structures.

The idea for treemaps is based on the Venn diagrams, but uses rectangles, instead of circle like shapes. the easiest algorithm for the creation of treemaps is the so called slice-and-dice approach, in which the data of one hierarchy layer is organized in stripes and the stripe orientation is changed hierarchy layer.

this introduces the problem of aspect ratios. for good visibility the strips should have near square characteristics, but the slice-and-dice algorithm favors elongated rectangles, which are harder to see and more difficult to annotate. on strength of the slice-and-dice approach is its supply for ordering the data and its layout stability on varying data over time.

several different approaches to diminish the aspect ratio problem have been introduced. one of the most promising methods is the "Ordered Treemap Layouts" algorithm from Ben Shneiderman he uses a 2D-quicksort to get an ordered, low aspect ratio and time stable version of treemaps, which are relatively easy to implement.

More Information can be found here (PowerPoint Presentation).


We implemented a Windows Application called "TreemapViewer" using C#, which uses a XML imput file based on a Microsoft specified DTD. The input file can be generated using your filesystem where the files represents the several nodes or use an existing file. The user can now choose an algorithm to generate a visualized treemap which can be saved as a PNG file.

All algorithm, except the Microsoft Treemap, where implemented by the students. For the Microsoft Treemap we used the Assembly by Microsoft Research Center.


All screenshots were taken using the same input file.


Technical Documentation

Technical documentations of the sourcecode and used assemblies are available as online and offline versions.

Runtime Requirements

Development Requirements

Offline Documentation

Online Documentation


Test Data


Daniel Scherzer, Florian Schulz (C) 2004 - Last Modified: 7th June 2004