跳到主要内容
版本:6.5.0

自由时间对比案例分享

需求背景: 有时用户需要手动选择时间范围和另一自由时间范围数据进行对比,例如今年春节假期和去年春节假期对比,去年双 11 和前年双 11促销持续天数不同,需要对比两个双 11 促销期间数据。类似这些情况没有办法使用系统自带的同环比功能,需要手动指定对比日期范围。

使用功能:全局参数

实现方法:

1. 新建 4 个时间类型全局参数,分别用来获取当前时段和对比时段的开始日期和结束日期。名字建议成对设置方便使用,例如 begin_date1、end_date1,begin_date2、end_date2。

image.png

2.  表格卡片里新建计算字段,使用 case when 或者if 函数来判断begin_date1和end_date1 之间的日期为“当前时段”, begin_date2和end_date2 之间的日期为“对比时段”。然后根据需要拖到维度栏或者对比栏, 还需要拖到筛选栏,勾选“当前时段”和“对比时段”。

image.png

3.  新建计算字段“天数”,计算出“当前时段”和“对比时段”的天数。根据需求拖到维度栏或者数值栏,放到数值栏的话聚合方式选“无处理”。

image.png

4.  制作报表并保存。编辑页面显示无数据的话,在页面右侧“图表属性”—参数默认值里可以临时设置默认值来保证有数据可预览和验证。

image.png

5. 在页面新建 4 个参数筛选器,分别使用卡片里引用的 4 个时间参数,保存后会自动联动当前页面所有使用同一参数的卡片。

image.png

如果需要联动页面内没有使用全局参数的其他卡片,需要改用日期筛选器,联动界面手动选择卡片里对应的时间参数。

image.png

6. 制作完效果如下。上述函数需要在多卡片复用的话建议直接另存为卡片,再修改图表类型制作其他可视化效果。

image.png