Download
as PDF

Tree Map Layout

The Tree Map Layout generates tree maps that are suitable for visualizing hierarchical data structures. A tree map visualizes the hierarchy using nested rectangles (nodes) where the size of a rectangle encodes its weight: the area of a rectangle is proportional to a specific dimension of data associated to it. A tree map can, for example, be used to show a file system structure on a hard disk, where the dimension of data is the size of the files/folders. The 'Weight Input Mode' setting defines how the weights of the nodes are determined.

Carefully note that this layout algorithm changes node sizes when generating a tree map.

To create a tree map, it is necessary to define a hierarchy as input for the algorithm. This is possible in two different ways:

  1. As nested grouping structure (recommended). Use the 'Grouping' option in the menu bar or in the context menu to group nodes. Note that top, left, right and bottom insets specified for the group nodes are obeyed.
  2. As a directed rooted tree graph. If the given graph is structurally a directed tree graph where all edges are directed from the root to the leaves, then the hierarchy is solely determined from the tree structure. Grouping is ignored in this case. A drawback of this approach is that insets for parent nodes are not supported.

Note that edges are not routed by the Tree Map Layout.

Weight Input Mode

Determines how the node weights, which encode the importance of a node, are specified.

From current node size
The current node size indicates the weight of the node, where a large size means a higher weight.
From node label text
The node label text defines the weight. Only node labels that contain only an integer or a floating point number are considered. Use this mode if you want to define the weight values for each node individually.
Uniform weights
All nodes get a uniform weight.

Tiling Policy

Determines the tiling policy that defines how the input is divided into sub-rectangles.

Squarified
This policy uses the so-called 'squarify' algorithm which tries to generate nodes with sizes close to the specified 'Aspect Ratio'. This often improves the readability and aesthetics of the resulting tree maps.
Slice-and-Dice
This simple policy places the child nodes one after another inside the parent node. Child nodes are either tiled vertically (slice), one on top of the other with the width equal to the parent's width. Or they are tiled horizontally (dice), one next to the other with the height equal to the parent's height. The strategy alternates with the hierarchy levels, e.g., level 1 uses slice, level 2 uses dice, level 3 uses slice and so on.

Aspect Ratio

The target aspect ratio when 'Squarified' is selected as 'Tiling Policy'.

Node order policy

Defines how nodes are ordered inside the tree map layout. Which nodes are affected by this policy depends on the 'Leaf node order policy'.

Descending by weight
Nodes are sorted descending according to their weight.
Ascending by weight
Nodes are sorted ascending according to their weight.

Leaf node order policy

Defines how leaf nodes are ordered with respect to non-leaf nodes on the same hierarchy level. Leaf nodes are nodes that do not have any further child nodes.

Trailing (after non-leafs)
Leaf nodes are always placed after the non-leafs. The 'Node order policy' is applied separately, once for the set of leaf nodes and once for the set fo non-leaf nodes.
Leading (before non-leafs)
Leaf nodes are always placed before the non-leafs. The 'Node order policy' is applied separately, once for the set of leaf nodes and once for the set fo non-leaf nodes.
Mixed with non-leafs
Leaf nodes and non-leaf nodes are mixed and sorted all together using the 'Node order policy'.

Preferred Layout Width

The preferred width of the whole tree map layout.

Preferred Layout Height

The preferred height of the whole tree map layout.

Note on the preferred size: If it is possible to arrange all nodes such that they fit into a rectangle with the preferred size, then the final result will have this exact size. However, satisfying the specified 'Spacing', 'Minimum Node Width' and 'Minimum Node Height' settings has higher priority than satisfying the preferred size. This means that the result might become larger if necessary.

Spacing

Determines the spacing/padding between nodes on the same hierarchy level.

Minimum Node Width

Determines the minimum width a node in the tree map layout must have.

Minimum Node Height

Determines the minimum height a node in the tree map layout must have.