跳到主要内容

矩形树图

1. 简介

矩形树图(Treemap)由马里兰大学教授 Ben Shneiderman 于上个世纪 90 年代提出,起初是为了找到一种有效了解磁盘空间使用情况的方法。

截图

2. 图表特点

矩形树图适合展现具有层级关系的数据,能够直观体现同级之间的比较。一个 Tree 状结构转化为平面空间矩形的状态,就像一张地图,指引我们发现探索数据背后的故事。

矩形树图采用矩形表示层次结构里的节点,父子节点之间的层次关系用矩形之间的相互嵌套隐喻来表达。从根节点开始,屏幕空间根据相应的子节点数目被分为多个矩形,矩形的面积大小通常对应节点的属性。每个矩形又按照相应节点的子节点递归的进行分割,知道叶子节点为止。

矩形树图的好处在于,相比起传统的树形结构图,矩形树图能更有效得利用空间,并且拥有展示占比的功能。矩形树图的缺点在于,当分类占比太小的时候文本会变得很难排布。相比起分叉树图,矩形树图的树形数据结构表达的不够直观、明确。

3. 使用场景

3.1 适合的场景

  • 适合展示带权的树形数据
    下图是 2015 年手机品牌及其下属手机型号的销量信息。同一级别的树通过算法,按各自权重大小(手机销量占比)将坐标系分割成若干个矩形块,设置颜色增强分类的区分度。

    截图

3.2 不适合的场景

  • 没有权重关系,且需要明显展示层级关系,用分叉树图更合适
    某公司组织部门图。第一个图是用矩形树图绘制,没有权重,层次不清。
    ![截图](/assets/images/docs/report/charts/treemap/treemap-chart-03.png" style="width:700px; max-width:100%; margin-bottom:24px;"/>
    用分叉树图绘制,部门组织层级清晰明了。

    截图

4. 使用实践

5. 与其他图表的对比

5.1 矩形树图和马赛克图

  • 矩形树图用于展示树形数据,是关系型数据。马赛克图用于分析列表数据,是非关系型数据。

5.2 矩形树图和分叉树图

  • 矩形树图用于展示带权的数据,分叉树图用于展示不带权的数据
  • 两个图表都用于展示层次数据,但是分叉树图展示的层次关系更清晰
  • 矩形树图能更多的展现树形结构内部的占比关系,分叉树图没有这个能力

附录: 矩形树图的构成

图表类型矩形树图
适合的数据带权的树形数据
功能表示树形数据的树形关系,及各个分类的占比关系
数据与图形的映射树形关系映射到位置,占比数值数据映射到大小。设置颜色增强分类的区分度
适合的数据条数大于5个分类

扩展阅读