PlotSet LogoPlotSet

How to Create a Treemap

A step by step walkthrough for turning a spreadsheet into a published treemap in PlotSet, from shaping the category and parent columns to exporting or embedding the finished tiles.

约 8 分钟

This is how to create a treemap in PlotSet from your own spreadsheet: tiles sized by value, grouped by hierarchy, coloured on purpose, then published as a live embed or exported as an image. Your own rows go through the same upload-to-publish path a real PlotSet treemap takes, including the one column that trips people up: the parent.

If your spreadsheet already has a category, a parent and a value in three columns, eight minutes gets the whole thing done. Pulling the data out of a pivot table first adds another five, since pivot exports usually carry subtotal rows that need to come out before the tiles will size correctly.

你需要的数据

Three columns, one row per tile: the category name, its parent group (blank for a top-level tile), and a positive number. One header row, no subtotal rows.

示例 CSV
CategoryParentRevenue
North America4200000
Europe3100000
Asia Pacific1800000
United StatesNorth America3300000
CanadaNorth America900000
GermanyEurope1400000
FranceEurope900000
United KingdomEurope800000
JapanAsia Pacific1100000
AustraliaAsia Pacific700000
备注

Leave the parent column blank for a top-level row, not filled with a placeholder like "None" or "Top". A blank cell is how PlotSet knows a tile has no ancestor; a text placeholder gets read as an actual parent name and adds a stray tile.

Every value must be zero or greater. A negative revenue or a loss row will not render as a tile, since a rectangle cannot have negative area, so pull those rows into a separate table before you upload.

If you are working from a pivot table, delete the grand total and subtotal rows first. A "Total" row uploaded alongside real categories becomes a tile of its own, usually the largest one on the page.

A flat treemap with no hierarchy works too: just leave the Parent column out entirely, or leave every cell in it blank, and every row becomes a top-level tile.

Parent names have to match a Category value exactly, including case and spacing. "north america" in the Parent column will not find "North America" in Category, and that child tile gets dropped.

操作步骤

PlotSet 中从空白模板到完成图表的具体点击路径。

  1. 01

    Open the treemap template

    From the PlotSet dashboard, start a new project and choose the Treemap template. It loads with sample data already bound, tiled by category, parent and value, so you can see the exact three-column shape before you swap in your own file.

    PlotSet 的模板选择界面:左侧是图表分类列表,中间展开 Bar Charts 分类的模板网格,Bar Chart 模板卡片上显示「Select」按钮。
    每份指南都从这里开始:先选分类,再选模板,不管你要做哪种图表,用的都是同一个网格。
  2. 02

    Shape your sheet into category, parent and value

    One row per tile: its name, the group it sits inside, and its size. If your source is a pivot table or a finance report, pull those three fields out into a plain flat sheet first. No merged cells, no subtotal rows.

  3. 03

    Upload the sheet or connect a live one

    Use the data panel to import a CSV or .xlsx file, paste rows straight from a spreadsheet, or connect a Google Sheet so the treemap can be refreshed later without a re-upload. PlotSet reads the first row as headers.

    PlotSet 编辑器的数据视图:表格中 Name、Value、Region 三列填着加拿大各省的数据,旁边的「Data」面板提供 CSV 上传、「Magic Import」和 Google Sheet 同步。
    这里的数据视图取自一个条形图项目。你可以上传 CSV、用「Magic Import」从图片里提取数字,或同步 Google Sheet,每种图表类型的面板都一样。
  4. 04

    Map the category, parent and value columns

    Confirm which column feeds the tile name, which one feeds the parent group, and which one sizes the tile. PlotSet usually guesses right when your headers are clear, but check it manually if your sheet has extra columns sitting between them.

    PlotSet 数据面板中高亮的列绑定:「Label/time」对应 A 列,「Values」对应 B 列,「Filter/color」对应 C 列,下方是「Auto Binding」按钮。
    绑定决定哪一列作标签、哪一列提供数值、哪一列决定颜色。「Auto Binding」(自动绑定)会根据表头推测,所以要核对一遍,别想当然。
  5. 05

    Check the hierarchy renders the way you expect

    Look for a top-level tile that is really a stray parent name, or a child tile that vanished because its parent value did not match exactly. Fix mismatches in the source sheet and re-upload rather than patching the chart by hand.

  6. 06

    Colour by group, not by size

    Size is already spoken for by the tile's area. Set the colour scale to the parent group so the hierarchy reads at a glance, or switch it to a second numeric column, growth rate or margin, if you want colour to carry a different story than area does.

    PlotSet 编辑器停在「Preview」标签页:画布上是做好的 Treemap,右侧的设置面板用红框标出。
    Treemap 的「Preview」标签页。所有样式设置都在红框标出的这个面板里,每个设置各自占一个标签页:外观、标题、脚注,以及这种图表类型特有的选项。
  7. 07

    Turn on labels for the tiles big enough to hold them

    PlotSet hides labels automatically once a tile gets too small to fit text without overlapping its neighbours. Leave that behaviour on rather than forcing every tile to label, and rely on the hover tooltip to surface the exact value for the small ones.

  8. 08

    Publish, embed or export the tiles

    Publish for a live interactive treemap with hover tooltips and a shareable link, grab the embed code to drop it into a page, or export a PNG, SVG or PDF if you need a static image for a deck or a report.

从已加载示例数据的 Treemap 模板开始,再替换成你自己的数据。

打开模板

发布、嵌入或导出

最后一段路对每种图表都一样:「Share」(分享)把图表变成一个在线的公开链接和一段嵌入代码,「Export」(导出)把它输出成静态文件。

Share:公开链接与嵌入代码

打开嵌入代码和公开链接的开关,图表就发布出去了。链接可以放心发给任何人;嵌入代码以 iframe 的形式放进任意页面,悬停提示和交互效果都会保留。之后修改了图表,点「Recreate」就能把改动同步到链接和嵌入代码两边。

PlotSet 编辑器工具栏中高亮的「Share」按钮,紧挨着「Export」按钮。
点「Share」,完成的图表就会变成一个公开链接和一段嵌入代码。
PlotSet 的「Share」对话框:用于启用嵌入代码和公开链接的开关,「Link」「Embed」「Facebook」「Reddit」「Twitter」「LinkedIn」「Email」几个按钮,以及带「Copy」按钮的图表公开链接。
打开嵌入代码和公开链接的开关,然后复制链接或取用 iframe。之后再修改图表,点「Recreate」就能把改动同步给所有已拿到链接的人。

Export:SVG、PNG 或 JPG

「Export」会按你需要的尺寸输出一份静态副本。SVG 放到多大都清晰,还能在设计工具里继续编辑;幻灯片和文档用 PNG 或 JPG 最稳妥。想让图片在高分屏上够锐利,关键就是那个倍数设置。

PlotSet 编辑器工具栏中高亮的「Export」按钮。
要做成幻灯片或报告里的静态文件,就走「Export」这条路。
PlotSet 的「Export chart」对话框:倍数选择器设为 2x,宽高输入框填的是 1000 和 600,展开的格式菜单里列出 SVG、PNG 和 JPG。
SVG 放到多大都清晰,还能在设计工具里继续编辑;做幻灯片用 PNG 或 JPG 最稳妥。导出前先设好倍数,图片在高分屏上才够锐利。

Treemap 的样式提示

Group the long tail into one tile

If your data has three big categories and forty tiny ones, the tiny ones will shrink into unreadable slivers regardless of how you colour them. Sum the small rows into a single "Other" row before upload, and mention in a caption what it covers.

Use colour for the second variable you actually care about

A treemap gives you two channels to work with: area for value, colour for anything else. Wasting colour on the same value the area already shows (a common default) throws away half the chart's power. Try colouring by year-over-year change instead.

Keep the hierarchy to two levels

PlotSet will nest a third level, but by the time tiles are three groups deep, individual rectangles are too small to compare or even see. If your data goes deeper, pick the two levels that matter most to the reader and flatten the rest.

Name the "Other" bucket specifically

"Other" on its own reads as a shrug. "Other: 14 regions under $50k" tells the reader exactly what got folded in and why it is not broken out, without them needing to ask.

制作 Treemap 时的常见错误

A tile is missing even though the row is in the sheet

The parent name in that row almost certainly does not match a category value exactly, often a trailing space or a different capitalisation. Compare the two columns directly in the spreadsheet, fix the mismatch, and re-upload rather than editing inside PlotSet.

One enormous tile dominates the whole treemap

This is usually a subtotal or grand total row from a pivot export that got uploaded as if it were a real category. Scroll to the bottom of the source sheet, delete the totals row, and re-upload.

Half the tiles are unlabelled and it looks broken

It is not broken: PlotSet is hiding labels that would overlap or overflow a small tile. Check the hover tooltip to confirm the value is still there, and if you need more tiles labelled, group the smallest ones into an "Other" tile so the remaining ones have more room.

深入了解 Treemap

不确定 Treemap 是否是正确选择?查看它是什么、何时使用以及何时不使用。

关于 Treemap

Treemap:常见问题

Three columns: category, parent, and value, with one row per tile. Leave the parent blank for top-level tiles, or drop the column entirely for a flat treemap with no hierarchy. CSV and .xlsx both work.

现在制作你的 Treemap

免费开始,300+ 模板任选。无需信用卡。