考点2.1.6 Create a dual axis chart

什么是双轴图?

双轴图其实我更愿意给它另一个名字叫做双变量共轴图. 双变量是指在这个图中有两个Measure. 两个Measure是两个本质不同的Measure, 它并不是一条线代表2023年, 一条线代表2024年, 而是一条线代表Sales, 一条线代表Profit. 而共轴是指他们同享一个X轴.

在下边的这个截图当中, 就是一个Dual Axis Chart. 上边黄色这条线代表的是Sales, 而下边蓝色的这条线代表的是Profit.

左侧是Sales的Axis, 而右侧是Profit的Axis. 目前你所看到的是Sales和Profit采用是相同的是range, 也就是他们所展示的范围完全相同.

关于双轴图的几个问题

  • 为什么是两个Measure, 三个Measure不行吗?

    不行, 因为在双轴图当中, 左边的Y轴显示的是第一个Measure的Axis, 而右边显示的是第二个Measure的Axis.

  • 双轴图一定是两条线么?

    不一定, 来自同一个Measure的线, 可以根据Dimension分成几条不同的线, 这完全取决于你需要展示什么
    在下边的这个截图里, 四条彩色的线分别代表着从2020年到2023年四年的销售额, 而左侧是代表销售额的轴,从0到120k, 而右侧则是代表利润率的轴,从0%到100%.
    由于四条代表Sales的线都是来自Sales这个Measure, 所以它们可以共享左侧的这个Sales的轴, 而右侧的Profit Ratio则是完全不同的另一个Measure. 这个双轴图里有五条线,但是它也是双轴图.

什么时候使用双轴图?

首先双轴图是两个不同的Measure放在一个图里, 那自然我们想要看的是这两个Measure之间关系的变化.

第二他们都用时间作为X轴, 那么我们所要探索的就是两个相关变量随着时间变化的趋势.

以零售业为例, 当销售额上涨的时候, 往往也伴随着成本的上涨, 因此两者随着时间上涨的速度是否一致?

另一种适合双轴图的情景就是当我们的生产量增加的时候, 单位生产成本往往会更低, 那么一个Measure来显示产量, 而另一个Measure就可以显示单位生产成本, 看看这种假设是否真的成立.

用Show Me Button创建一个双轴图

双轴图在Show Me Button里叫做Dual Lines. 根据Show Me Button的标注, 我们需要一个☝️ Date, 0 或多个Dimension, 加上两个Measure. 看清楚嗷, 不多不少就两个measure.

我们先按住Ctrl, 选中[Order Date], 选中[Profit], 再选中[Sales], 点亮Dual Axis Chart, 一个双轴图就做好了.根据我们在上一课所写的调整日期的知识, 你可以把年调整为你需要的时间单位, 比如月,或者季度什么的.

创建双轴图的另一种方法

假设我们在前边已经创建了一个包含Profit和Sales的双轴图, 但是用户改变主意了, 他们不想看Profit了, 想看Quantity了. 这个时候你其他什么Filter啊, 颜色啊 线的粗细都调好了, 难道你要把整个图都删了, 重新用Show Me Button再建一个嘛. 你也不能说 唉 唉, 你可不能变啊, 我这重新画一个老费劲了.

综上所述, 你得学习另一种方法来化解上边的这个危机.

我在下边的这个动图当中完整的演示了一遍如果一个个添加column, 如何创建一个Dual Axis Chart. 在这其中最关键的一步就是当我们有两个挨着的Measure的时候, 你点击其中一个Measure 会出现一个叫做Dual Axis的选项. 这个选项是把两个Measure合成在一个图里的关键. 如果在Dual Axis当中, 两个Measure已经合并, 那么你再点击一次这个选项,就能把这两个Measure解绑. 这个时候你再删除掉一个, 拉另一个Measure上来就能实现替换其中一个Measure的效果.

Synchronize Axis 同步轴选项

在Dual Axis当中有一个重要的选项就是同步轴选项. 那么它是什么意思. 在上边的这个动图当中, 你可以看到当我们创建完Profit和Sales的Dual Axis Chart的时候, 这两者的线挨的非常近, 但这代表Sales和Profit的数值非常接近么, 你卖多少钱就赚多少钱这肯定是不对的. 那么问题出就出在这两个变量有着不同的Scale, 你可以理解为数据的尺度或者大小范围. 我们必须将他们两个调整成统一尺度才能进行比较.

在默认情况下, Tableau会尽可能让整个图表伸展开, 也就是让图表的Y轴从0开始, 然后到整个变量的最大值高一点点, 这样的话, 这个图表就占满整个屏幕. 当我们有两个变量的时候, Tableau同样会对另一个变量进行这种操作. 这就导致我们在下边这个截图所看到的这个问题. 左边的轴代表Profit, 范围是从0到100k, 右边的是Sales, 范围是从0到750k.

100k和750k显然不对等, 如果我们想要这两个轴对齐,我们就需要右键点击Sales所在的轴, 然后选择Synchrozie Axis. 至于点击完之后什么样, 留给你自己去探索