Tableau可视化之多变条形图

  • 2020 年 3 月 31 日
  • 筆記

导读:上篇Tableau可视化之多变折线图一文中,介绍了Tableau折线图的几种花样作图方法,今天本文继续就另一个基本可视化图表——条形图的制图及变形进行介绍。

01 基本条形图

以Tableau自带超市数据为例,制作基本条形图操作十分简单,常用于表达某一度量数据随时间或者其他多个维度间的变化情况。例如,想了解北京一年12个月中各月份的销售额对比情况,那么仅需将月份和销售额分别拖动到行和列坐标轴,在标记区选择条形图并加入颜色和标签设置,即可实现一张基本的条形图。

Tableau中最基本的条形图

在基本条形图的基础上,如果想直观了解各月份销售额的达标情况,那么可选择添加参考线或者参考区间,以直观了解全年中哪些月份达到了平均销售额,哪些还不够。

在基本条形图添加参考区间

上图是添加了参考区间,区间上下限分别是平均值的50%和100%。易见,全年达到平均销售额的月份仅有5、8、10、11和12五个月,而1、2和4三个月甚至还未达到全年平均值的50%,销售额较低。

02 旋风图

虽然美名其曰"旋风图",实际上就是两个基本条形图的对比图。

上海和北京销售额旋风图

旋风图常用于对比两个类别多个维度间的度量数据,如要对比北京和上海两个城市各月份销售额情况,则可以制作如上图所示的旋风图。可以直观发现,上海销售额整体要高于北京销售额,且两个城市的销售额波动情况也不尽相同,其中上海是在8月销售额最高、4月最低,而北京则是在10月最高、2月最低。

实际上,旋风图的制作仅仅是两张基本条形图的组合,以上图为例,其制作流程为:

  • 分别创建北京和上海的销售额字段
  • 以月份为行字段、北京和上海销售额分别为列字段制作双条形图
  • 编辑左图横轴为倒序
  • 在标记区设置相应的颜色和标签即可

03 瀑布图

如果想直观了解全年各月份销售额的占比情况,且仍然采用条形图样式的话,那么就可用瀑布图(当然,了解占比的最好图表是饼图)。

瀑布图是在Tableau自带甘特图的基础上稍加改变而成的。

甘特图(Gantt chart)又称为横道图、条状图(Bar chart)。其通过条状图来显示项目,进度,和其他时间相关的系统进展的内在关系随着时间进展的情况。以提出者亨利·劳伦斯·甘特(Henry Laurence Gantt)先生的名字命名。 ——摘自百度百科

当然,看了甘特图的文字介绍可能还是无法直观理解何为甘特图,所以先看一张由Tableau制作的基本甘特图例

Tableau制作基本甘特图

严格来说,上面这个甘特图其实算不上是有价值的甘特图,因为各条形的长度和起点是正相关的,而在实际中条形区域则用于表示某个起点时间加上持续时间的长条。

在认识甘特图的基础上,制作瀑布图的步骤其实也比较简单。首先给出瀑布图效果:

观察瀑布图,实际上就比较容易直观发现各月份销售额在全年业绩的比重和各月累计销售额情况。

其在基本条形图基础上,制作流程为:

  • 以销售额创建快速表计算为汇总
  • 以销售额的负值创建条形图长度字段
  • 仍然以月份和销售额(快速表计算后的汇总)为行列制图,在标记区选择甘特图,设置颜色和标签,并以创建的销售额负值为大小,则可实现瀑布图的制作

04 弧线图

在旋风图中,对北京和上海的各月份销售额情况进行了对比,如果要进行对比的城市不止两个、且仅需对比年度销售总额的话,那么弧线图则具有更强的视觉冲击力,对比效果也更为直观。

四个一线城市销售额对比

弧线图实际上可以看做是弧状条形图,仍然是用于对比不同类别间的度量大小情况。

制作弧线图的步骤稍显麻烦,且需要用制作辅助Excel表格数据。以上图为例,其实现流程如下:

  • 统计四个一线城市的销售额占比情况
  • 制作辅助Excel数据表,大小为101行×4列,101行中,除首行为列标签外,其余100行用于分别对应各子类占比信息;4列分别为城市、半径、角度和数值,其对应含义为:
    • 城市,用于在弧线图中显示子类名称标签
    • 半径,用于显示在弧线图中外围圈数,如半径为1表示最内圈,半径为4表示最外圈
    • 角度,用于显示弧线图跨过角度信息,由相应子类占百分比数值决定,例如广州占比18%,则其角度数值跨度为0—17;
    • 数值,用于在弧线图中显示子类数值标签
  • 在完成辅助Excel数据表的基础上,依据半径和角度信息创建X、Y字段,计算公式为:

计算公式中角度的变换关系需依据弧形显示效果尝试决定,例如选择如下大小的角度变换关系时,制作的弧线图整体偏小、效果一般,故需重新调整X、Y的计算公式

角度变换选择不当,弧线图偏小

  • 最后,固定坐标轴大小区间(保证行列坐标轴跨度区间一致,保证弧线图是正圆),设置标记区的颜色和标签即可。

需知,弧线图与基本条形图最大的不同在于:各类别度量大小不再与条形长度直接相关,而仅与条形所跨角度成正比;且弧线条形所跨角度大小不严格等于该子类的百分比占比,而仅表示子类间的大小关系。另外,弧线图也可看做是折线图的一种变形。

05 总结

本文对Tableau中制作条形图进行了介绍,并讲解了几种条形图的变形。

  • 条形图常用于表达多个维度间的度量大小对比
  • 添加参考线可直观显示各子类度量的"达标"情况
  • 旋风图用于显示两个子类多个维度间的度量大小对比
  • 瀑布图在甘特图基础上完成,显示实时累计和跨度较为方便
  • 弧线图用于少量子类间单维度的大小对比,制作稍复杂,效果较好