Facebook这个财务现金流瀑布图在很多博客上流传后,我们收到了很多提问,主要是关于从甘特图演变到瀑布图,到底该如何确定柱子的起始点。
在开始实战之前,我们简单回顾一下瀑布图的适用场景。
瀑布图适用于表现按照顺序引入的正值(增量)或者负值(减量)的累积效应,这些中间的数值可以是基于时间的(比如按照从1月到12月每个月收入和支出,以及余额的变化),也可以是基于类别的(比如公司人力资源统计2019年开始到结束因各个原因入职和离职的员工人数变化)。
瀑布图的一大亮点在于,在一个图中既可以展示不同数据点的绝对值,还可以展示累计值。
那么如何在Tableau中实现呢?
- 在开始之前,我们先理解一下甘特图的要点。以横向布置的甘特图(瀑布图由此进化而来)来说:
- 柱子的起点:X轴(列)的度量值决定起点
- 柱子的方向:放去标记卡【大小】的度量,正数向右,负数向左
- 柱子的长度:放去标记卡【大小】的度量绝对值决定长度
方法一
起点:如图所示,将Category里面第8项进行负数处理,放到列里,然后用表计算进行累计求和。
方向:起点度量值的负数处理求和。保证唯一是正数的1.Revenue为向左,其他均向右。
长度:起点度量值的负数处理求和。
方法二
起点:如图所示,将Category里面第8项进行归0处理,放到列里,然后用表计算进行累计求和。
方向:-Amount求和。保证原本是正数的1.Revenue和8. Net income变成负数向左,其他均向右。
长度:-Amount求和。
方法三
这个方法最简单,大致思路就是去掉原来Category中的8. Net income,利用列合计功能并修改合计标签为8. Net income (loss),使得列合计看起来就像Category里的维度值。
起点:如图所示,Amount累计求和。
方向:-Amount求和。保证原本是正数的1.Revenue变成负数向左,其他均向右。
长度:-Amount求和。
到这里,你大致可以看出,其实方法1和方法2是类似的,只是我们在决定起点的时候,用了不同的方法,从而导致控制方向的度量值也会不同。类似方法1和2的可能还有很多其他的变种,你也可以自己尝试,列出的2种是相对比较容易理解的,更符合现金流业务的直观理解。