1. 概述
用户可点击「另存为主题」,自己操作一遍或查看内部编辑步骤。
1.1 应用场景
组件中不包含日期字段,希望可以通过过滤组件筛选日期获得该日期的所在自然月的同环比情况。
本文所对比的是自然月的同环比,若用户想消除月份的天数差异,例如想对比 7 月份 1-30 号 与 6 月份 1-30 号,可参考:使用日期区间过滤展示同比环比
例如在日期过滤组件中输入「2014-03-01」,组件中自动筛选出各个省份 2014 年 3 月的合同金额,并计算出 3 月合同金额的同比环比。如下图所示:
1.2 实现思路
通过添加不绑定字段的日期过滤组件和计算指标共同实现。
本文使用于自然月的同环比计算。
2. 操作步骤
2.1 添加组件
新建分析主题,将内置数据「省市签约数据统计」添加进分析主题中,如下图所示:
然后新建组件,使用该数据,如下图所示:
2.2 新建参数
由于我们要计算筛选的可以动态变化的同环比,因此需要使用参数来实现动态。
在组件编辑界面添加时间类型的参数,如下图所示:
生成参数存放在待分析区域,如下图所示:
2.3 计算当月、上月、去年同期的合同总价
同比=(当月合同总价-去年同期合同总价)/去年同期合同总价*100%
环比=(当月合同总价-上月合同总价)/上月合同总价*100%
所以要求月同比和月环比,我们需要「当月合同总价」、「去年同期合同总价」、「上月合同总价」三个新字段。这三个新字段都需要绑定我们新创建的参数。步骤如下:
2.3.1 计算「当月合同总价」
1)复制「合同总价」字段,并将其命名为「当月合同总价」。
2)对「当月合同总价」字段进行明细过滤。过滤实现的效果为:对合同总价进行筛选,得到日期过滤组件所选日期当月的数据。
2.3.2 计算「去年同期合同总价」
1)复制「合同总价」字段,并将其命名为「去年同期合同总价」
2)对「去年同期合同总价」字段进行明细过滤。过滤实现的效果为:对合同总价进行筛选,得到日期过滤组件所选日期一年前全月的数据
2.3.3 计算「上月合同总价」
1)复制「合同总价」字段,并将其命名为「上月合同总价」
2)对「上月合同总价」进行明细过滤。过滤实现的效果为:对合同总价进行筛选,得到日期过滤组件所选日期上月的数据。
2.4 计算同比环比
上面已经将计算同比环比所需要的字段计算出来了,接下来就可以计算同比环比。
2.4.1 计算「同比」字段
添加同比计算字段,输入公式:if(ISNULL(sum_agg(去年同期合同总价)),null,(sum_agg(当月合同总价)-sum_agg(去年同期合同总价))/sum_agg(去年同期合同总价))
这里我们将公式拆分成两部分方便用户理解:
公式分解 | 描述 | 帮助文档 |
---|---|---|
if(ISNULL(sum_agg(去年同期合同总价)),null,同比) | 若「去年同期合同总价」没有值,那么该「同比」字段为空,否则计算同比值。 | |
同比=(sum_agg(当月合同总价)-sum_agg(去年同期合同总价))/sum_agg(去年同期合同总价) | 计算同比值。 | SUM_AG-求和 |
2.4.2 计算「环比」字段
添加环比计算字段。,输入公式:if(ISNULL(sum_agg(上月合同总价)),null,(sum_agg(当月合同总价)-sum_agg(上月合同总价))/sum_agg(上月合同总价))
这里也将公式拆分成两部分方便用户理解:
公式分解 | 描述 | 用到的函数 |
---|---|---|
if(ISNULL(sum_agg(上月合同总价)),null,环比) | 若「上月合同总价」没有值,那么该「环比」字段为空,否则计算环比值。 | |
环比=(sum_agg(当月合同总价)-sum_agg(上月合同总价))/sum_agg(上月合同总价) | 计算环比值。 | SUM_AG-求和 |
2.5 制作分组表
所有字段都计算完成后,做出一个图表组件就很容易啦。
这里我们做一个分组表,将字段拖入分析区域,并将「同比、环比」的数值格式改为百分比。如下图所示:
注:此处由于没有选择日期,因此同一省份当月、上月、去年同期的合同总价都相等,所以同比环比均为0,当日期过滤组件选择日期后即显示对应时间的同环比。
2.6 制作仪表板
1)新建仪表板,将组件添加至仪表板中,如下图所示:
2)将日期过滤组件添加至仪表板,如下图所示:
3)对过滤组件绑定参数,实现过滤组件筛选的日期即为我们新建的参数的动态日期,如下图所示:
3. 效果查看
在仪表板中,筛选日期。就可以看到所选日期它当月的合同总价、上月的合同总价及环比、去年同期合同总价和同比。详情参见本文应用场景。
注:如果是无效时间。组件显示为空。