Send Feedback

Glossary Item Box

This section gives you an overview of the use of the IGTreemapView™ control. It contains information ranging from what the control does to the step-by-step procedures on how to accomplish common tasks using the control.

Click the links below to access important information about the IGTreemapView control.

About IGTreemapView

IGTreemapView is designed to display a hierarchical data structure of treemap nodes, where each node is represented by a rectangle. Each treemap node can have any number of child nodes and the children are sorted by size, from largest to smallest.

A typical data source for the treemap is an array of custom objects, each of which can potentially hold an array of custom objects. A treemap datasource must conform to IGTreemapViewDataSource protocol. IGTreemapViewDataSourceHelper provides a way to easily create a valid datasource by supplying the property paths for the nodes to bind to at each level of the treemap.

There are several layout algorithms that define the layout of the treemap nodes. Those are controlled by layoutOrientation and layoutType properties.

The treemap supports themes. There are predefined themes available in IGTreemapThemes.h. Custom themes can be created by implementing IGTreemapThemeDefinition protocol. Theme colors are applied per level in the treemap. The same effect can be achieved by assigning an array of brushes and outlines via brushes and outlines properties. Treemap nodes can also get their brushes from a color mapper. IGTreemapNodeColorMapper can be used to conditionally set node brushes based on the node's size or based on any other property value in the data source.

The treemap supports transitional animations via transitionDuration property. Nodes will animate their frame changes when layout changes or during drill-down and drill-back operations. Drill-down and drill-back are built into the treemap and will be triggered by tapping on a node and pinching in respectively. These triggers can be overridden by implementing the treemap delegate.

The tremap has two rendering modes: UIView (default) and immediate mode. By default each node will be treated as a child UIView or its parent node. This makes the node support any operations available in a UIView, such as custom content. During immediate mode rendering, all nodes are drawn using core graphics, which makes the treemap perform faster at the cost of flexibility of using views.

Adding the Chart Framework File

This topic demonstrates how to add the Chart framework file to a project.

Adding the Treemap to a View

This topic provides basic information about creating an instance of the IGTreemapView to help you get up and running with this control.

Configuring IGTreemapView

The topics in this group explain and demonstrate enabling, configuring, and using the IGTreemapView control’s supported features.

Data Source Helper

This topic provides a conceptual overview of the data source helper in the IGTreemapView and demonstrates its configuration using a code example.


This topic provides an introductory overview of the supported tree map layouts available in the IGTreemapView control.


This topic provides an introductory overview of the supported themes available in the IGTreemapView control.