1. 概述
1.1 背景
有时候我们不想要对比整个自然月的同比环比。
比如说10 月有国庆假,如果想知道 10 月份的合同总价的环比情况,直接对比 9 月份与 10 月份的数据是不行的。必定使用「8-31号」的数据与 9 月份「8-31号」相比更能展现出合同签约情况。
又比如说这个月刚到 15 号,他想知道这个月 1-15 号合同总价与上个月 1-15 号的环比情况,与去年同期 1-15 号的同比情况。怎么计算呢?
1.2 预期效果
在日期区间筛选 2013-03-15 到 2013-03-31,分组表中自动筛选出当前时间段的合同总价。并计算该时间段的同比环比,如下图所示:
1.3 实现思路
通过添加不绑定字段的日期过滤组件和计算指标共同实现。
同 求同比和环比-表维度非日期 中的示例一,区别在于本例可使用日期区间过滤组件,过滤选择的时间段内的数据。
2. 操作步骤
新建一个仪表板,进入仪表板编辑页面。
2.1 添加组件
2.1.1 添加日期区间过滤组件
1)在空仪表板中拖入一个「日期过滤组件」,如下图所示:
2) 在过滤组件编辑页面直接点击保存,如下图所示:
2.1.2 添加图表组件
使用 FineBI 的 demo 数据「省市签约数据」添加一个新的组件。如下图所示:
2.2 计算各时间段合同总价
同比=(当前时间段合同总价-去年同时间段合同总价)/去年同时间段合同总价*100%
环比=(当前时间段合同总价-上月同时间段合同总价)/上月同时间段合同总价*100%
所以要求月同比和月环比,我们需要「当前时间段合同总价」、「去年同时间段合同总价」、「上月同时间段合同总价」三个新字段。这三个新字段都需要绑定我们 2.1 节新创建的日期区间过滤组件。步骤如下:
2.2.1 计算「当前时间段合同总价」
1)复制「合同总价」字段,并将其命名为「当前时间段合同总价」。
2)对「当前时间段合同总价」字段进行明细过滤。过滤实现的效果为:对合同总价进行筛选,得到过滤组件所选日期区间的数据。
2.2.2 计算「去年同时间段合同总价」
1)复制「合同总价」字段,并将其命名为「去年同时间段合同总价」;
2)对「去年同时间段合同总价」字段进行明细过滤。过滤实现的效果为:对合同总价进行筛选,得到过滤组件所选日期区间一年前的同时间段数据。
2.2.3 计算「上月同时间段合同总价」
1)复制「合同总价」字段,并将其命名为「上月同时间段合同总价」;
2)对「上月同时间段合同总价」字段进行明细过滤,过滤实现的效果为:对合同总价进行过滤,得到过滤组件所选日期区间一月前的同时间段数据。
2.3 计算同比环比
2.3.1 计算「同比」字段
添加同比计算字段。若「去年同时间段合同总价」没有值,那么该「同比」字段为空,否则计算同比值。
这里我们将公式拆分成两部分方便用户理解:
公式 | 用到的函数 |
---|---|
if(ISNULL(sum_agg(去年同时间段合同总价)),"",同比) | |
同比=(sum_agg(当前时间段合同总价)-sum_agg(去年同时间段合同总价))/sum_agg(去年同时间段合同总价) |
2.3.2 计算「环比」字段
添加环比计算字段。若「上月同时间段合同总价」没有值,那么该「环比」字段为空,否则计算环比值。
这里也将公式拆分成两部分方便用户理解:
公式 | 用到的函数 |
---|---|
if(ISNULL(sum_agg(上月同时间段合同总价)),"",环比) | |
环比=(sum_agg(当前时间段合同总价)-sum_agg(上月同时间段合同总价))/sum_agg(上月同时间段合同总价) |
2.4 制作分组表
所有字段都计算完成后,做出一个图表组件就很容易啦。
这里我们做一个分组表,将字段拖入分析区域,并将「同比、环比」的数值格式改为百分比。如下图所示:
2.5 效果查看
进入仪表板,筛选日期。就可以看到所选日期它当前时间段合同总价、上月同时间段合同总价及环比、去年同同时间段合同总价和同比。如下图所示: