举个栗子!Tableau 技巧(189):用拱形图 ARC chart 呈现数据分布

published: 2022-09-16

较早前,我们分享过 数据可视化辞典:帮你找到数据的最佳表达图形 。在部分和整体关系类的图表中,也已陆续举过 华夫饼图(Waffle Chart)、维恩图(文氏图)以及 瀑布图空心饼图(环形图)的 🌰 。



考量应用场景的普遍性,我们再来分享一种常用图表:拱形图。

- 拱形图看着像半个环形,因此它可以像饼图、环形图一样,用于呈现数据的分布情况;

- 拱形图也能像 环条图(跑道图),来呈现数据的进度百分比(0-100%),用于进度情况分析;

- 拱形图跟汽车或监测设备的仪表盘外观类似,所以还经常用于仪表盘分析。


为避免帖子过长,今天先通过第一种应用场景“呈现数据分布”,来分享在 Tableau 中如何实现拱形图。一睹为快吧!

本期《举个栗子》,我们要给大家分享的 Tableau 技巧是:用拱形图 ARC chart 呈现数据分布。


为方便学习,栗子使用 Tableau 自带的“示例-超市”数据源。掌握栗子方法后,数据粉可尝试使用自己的数据。


具体步骤如下:

1.连接数据源


打开 Tableau Desktop,连接示例-超市数据源中的“订单”表。

2.创建计算字段


拱形图的生成类似于环形图,都是通过基础图形“饼图”转化而来,所以需要创建计算字段,达到生成一个在平面里位于上方的半圆环。

单击”数据“窗口右上角 ▼ 符号,下拉菜单中选择:创建计算字段。以数据源中的产品“类别”为例,我们创建一个产品销售额贡献分布拱图,需要创建 10 个计算字段,分别如下:


➤ 创建计算字段:办公用品销售额占比,键入函数

SUM(IF [类别]='办公用品' THEN [销售额] END)/SUM({SUM([销售额])})

➤ 创建计算字段:技术销售额占比,键入函数

SUM(IF [类别]='技术' THEN [销售额] END)/SUM({SUM([销售额])})


➤ 创建计算字段:家具销售额占比,键入函数

SUM(IF [类别]='家具' THEN [销售额] END)/SUM({SUM([销售额])})


➤ 创建计算字段:办公用品弧度-1,键入函数

IF [办公用品销售额占比]<=0.5 THEN [办公用品销售额占比] ELSE 0.5 END


➤ 创建计算字段:办公用品弧度-2,键入函数

IF [办公用品销售额占比]<=0.5 THEN 0 ELSE [办公用品销售额占比]-0.5 END


➤ 创建计算字段:技术弧度-1,键入函数

IF [办公用品销售额占比]<=0.5 AND ([办公用品销售额占比]+[技术销售额占比])<=0.5 THEN [技术销售额占比]

ELSEIF [办公用品销售额占比]<=0.5 AND ([办公用品销售额占比]+[技术销售额占比])>0.5 THEN 0.5-[办公用品销售额占比]

ELSE 0

END


➤ 创建计算字段:技术弧度-2,键入函数

IF [办公用品销售额占比]<=0.5 AND ([办公用品销售额占比]+[技术销售额占比])<=0.5 THEN 0

ELSEIF [办公用品销售额占比]<=0.5 AND ([办公用品销售额占比]+[技术销售额占比])>0.5 THEN 0.5-[家具销售额占比]

ELSEIF [办公用品销售额占比]>0.5 THEN [技术销售额占比]

END


➤ 创建计算字段:家具弧度-1,键入函数

IF [家具销售额占比]<=0.5 THEN 0

ELSE 0.5-[办公用品销售额占比]-[技术销售额占比]

END


➤ 创建计算字段:家具弧度-2,键入函数

IF [家具销售额占比]<=0.5 THEN [家具销售额占比]

ELSE 0.5

END


➤ 创建计算字段:半圆弧,键入函数

AVG(1)


☝ 计算字段补充解释:

- 通过以上计算,固定了在拱形图中产品类别的排列顺序从左到右依次为办公用品、技术、家具,若期望改变排列顺序,则需对上述计算中的“弧度”类字段进行相应调整;

- “弧度”计算字段用于设定各弧度的位置:X 和 Y 轴将平面分成四个象限,拱形图位于第四和第一象限。由于 Tableau 对饼图的起点位置设定在 Y 轴的正半轴(且顺时针方向旋转排列),因此,需要对拱形图中的各个“弧度”的位置做上述严格的设置。

3.创建视图


将”标记“卡中的标记类型改为:饼图,将字段“度量值”和“度量名称”分别拖放至”标记“卡的“角度”和“颜色”中;


右键单击“筛选器”窗格中的“度量名称”字段,下拉菜单中选择:编辑筛选器,在对话框中,去掉勾选除办公用品弧度-1、办公用品弧度-2、技术弧度-1、技术弧度-2、家具弧度-1、家具弧度-2、半圆弧外的其它选项;


将工具栏的视图模式由“标准”切换为“整个视图”,视图中出现如下饼图。

鼠标拖动“度量值”卡中的胶囊位置,来调整饼图中各“度量名称”的位置顺序(注释:按前面编辑的“弧度”计算调整位置)。

单击“标记”卡中的“颜色”,在弹窗中选择:编辑颜色。在颜色编辑窗口中,为不同的“度量名称”设置颜色(注释:务必保证同类“弧度”颜色相同,半圆弧的颜色设置与背景色相同。)


此时,视图中是一个扇形图,接下来需要将其转化为拱形图,步骤与饼图变成环形图一致:


❶ 双击行的空白处,在打开的空白胶囊中键入:AVG(0)。重复操作,再创建一个“AVG(0)”胶囊。这时,可以看到有两个“AVG(0)”“标记”卡,如下图所示:


❷ 将第二个“AVG(0)”“标记”卡中的字段全部移除,再单击“颜色”,将颜色设置为与背景色相同的颜色(本栗为默认的白色);


❸ 再打开第一个“AVG(0)”“标记”卡,点击“大小”,将其大小调大一些;


❹ 接下来右键单击行功能区的第二个AVG(0)胶囊,在弹出来的菜单中选择“双轴”,即可得到如下效果:


❺ 通过“设置格式”将图表中的框线、零值线等清除:


今天的 Tableau 技巧,你 Get 到了吗?赶快试试看吧!