页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

1 概述

时间维,即日期层次结构, 是一种结构化日期的方法,以便根据不同的分组时间片轻松向下钻取或向上钻取数据。例如,您可以创建日期层次结构以将月份置于年份之下,将周置于月份之下。

2 示例说明

2.1 日期字段生成时间维度

以产品自带的”订单模型“为例,”有时需要进行时间年-月-日的钻取(下钻) 以获取更详细的销售情况“,效果如下:时间维是指基于时间的层级结构,用于跟踪和分析时间相关的数据时间层次是动态的,可以根据需要进行扩展或缩小,以便根据不同的时间实现向下、向上钻取,还可以通过时间维度实现时间计算:前期同期、同环比、累计等。

2  创建时间层次结构


信息

当创建时间层次时,勾选了年周层次,会生成2个时间层次,一个是包含年、年周的时间层次,一个是不包含年周的时间层次。

Image Added


信息
title前置条件

1、日期、 日期时间数据 类型的字段支持”创建时间层次结构“ 。

2、创建时间/层次结构还可以查看:创建层次 。

3、实现地理维度下钻,可参考:创建时间维

4、实现维度、度量目录归类,可参考:创建目录

5、日期层次上钻、下钻示例可查看:组件下钻

6、时间维度进行编辑,可以添加或去掉某个层次,但是“年”层次,无法去掉。

以产品自带的northwind数据库下的”订单表“、”订单详情表“等创建”订单模型“。

通过”时间年-月-日“ 维度进行钻取(下钻) 以获取更详细的销售情况“,效果如下:

Image Modified

具体操作步骤如下:

1)在模型中创建时间维度

  • 入口:选中某个日期类型的维度字段,右键菜单,出现”创建时间层次结构“;只有日期数据类型的字段右键菜单才会有”创建时间层次结构“的菜单。

      Image Removed

  • 勾选需要生成的层次结构,目前模型支持的层次结构:年、年季、年月、年周、年月日;

        Image Removed

  • 点击【确定】即生成了一个新的时间维度

       Image Removed

...

1、创建模型并且加入”订单表“、”订单详情表“等:

...

  • 入口:选中”订单表“下面的 订单日期 字段,再通过右键菜单 创建时间层次;
  • 生成时间维度:勾选需要生成的层次结构,目前模型支持的层次结构:年、年季、年月、年周、年月日,点击 确定 即生成了一个新的时间维度;新的时间维度默认命名规则:以原字段别名+"_时间维度",如果一个日期生成了多个时间维度时,以原字段别名+"_时间维度"+2,3,4......依次递增
  • 编辑:如果发现之前创建的层次结构,缺少了其中某个或者多了某个层次,可以通过选中【时间维度目录】右键菜单的”编辑“进行增加或者减少层次;减少层次,需要注意是否会影响报表的展示,如果影响,减少层次需要慎重。
  • 修改别名:如果发现默认生成的时间维度不好理解,可以通过选中【时间维度目录】右键菜单的”属性“/”别名“,修改显示名称;
  • 显示格式:默认根据层次类型显示已存在数据格式,如果已存在的数据格式无法满足,可以查阅:数据格式进行新增显示格式。

2)创建好时间维度,保存模型后,去创建交互式仪表盘,拖入柱图组件,把【年】、【销售量】、【销售额】拖入到X轴、Y轴:

Image Removed

  • 通过钻取可以实现具有时间层次的维度,层层下钻的效果,每下钻一层生成一个向导页签,点击任意向导页签返回页签所属资源层。

     

2.2 时间计算

信息

时间计算包含:报表层的快速计算、多维表达式时间函数、计算度量向导模式的时间计算

以上几种计算依赖已经创建好的时间层次结构,如果没有时间时间结构无法进行时间计算;

以” 2.1 日期字段生成时间维度“ 章节为例,继续查看【销售额】的同期值、前期值;

1)方式1:快速计算

  • 在仪表盘的Y轴,对【销售额】选择快速计算/同期/同期值2,如果没有 时间层次,快速计算是禁用状态;如想查看更多信息,可查阅:分析数据

Image Removed

1)方式2:计算度量向导方式创建【销售额】同期值、前期值

  • 在模型中新建计算度量或者在交互式仪表盘新建计算度量并选向导模式,如下图,计算类型选择“时间计算/同期值”,根据提示拖入对应的基数和时间层次等,创建"销售额(同期值)"; 重复步骤创建“销售额(前期值)”; 如想查看更多信息,可查阅:自定义计算度量应用示例

Image Removed

在交互式仪表盘查看效果:

Image Removed

2.3 字符串字段标记为时间层次

有一些场景底层的数据没有标准的日期格式,比如数仓已处理好的大宽表本身没有“日期”字段,表中记录的是“年”、“年周”、"周",可以通过手工建层次目录,实现高级计算。

以"查看以时间年-年月-年周的钻取并且查看累计值"示例说明标记时间层次的使用

示例数据下载:零售数据.csv

最终效果如下:

Image Removed

具体操作步骤:

1)把execl数据导入到模型中,并通过新建层次结构把把“年”、“年月”、“周”放入到同一个层次结构中,如下图:

    Image Removed

  • 这时去前端做报表,可以做下钻,但是无法做高级时间计算,因为它现在只是普通的层次结构,还不是时间维度
  • 如果要做高级时间计算需要把“年”、“年月”、“周”,标记为“时间层次结构”,并且选择显示格式,如下图: 

          Image Removed

2)保存模型,抽取并去交互式仪表盘建柱图,不但可以实现下钻还可以实现时间高级计算。

  • 依次递增,比如”订单日期_时间维度“,“订单日期_时间维度2” 。
  • 时间维度支持 编辑: 如果发现之前创建的时间维度,缺少了其中某个或者多了某个层次,可以通过选中 时间维度目录 右键菜单 /  编辑 进行增加或者减少层次;其中 减少层次,需要注意是否会影响报表的展示,如果已经有报表使用了该层次,减少了报表会报错,需要慎重。
  • 时间维度支持 删除:如果发现创建错了时间维度,可以通过 时间维度目录 右键菜单 /  删除 菜单进行删除操作。
  • 时间维度支持 隐藏/显示:可以通过 时间维度目录 右键菜单 /  报表中隐藏、显示 菜单进行操作; 如果隐藏了时间维度,无法用于构建计算度量命名集计算成员,也无法显示在报表层。

Image Added

  • 针对 时间维度 下面的具体时间层次可以设置属性,属性包含以下内容:
选项描述
别名修改显示别名,比如”年季“,可以改成”季“或者”季度“等符合业务需求的名字。
显示格式

1、显示格式:产品自带了一批显示格式其中:

(1)年,默认格式:yyyy(示例:2016)、yyyy年(示例:2016年)。

(2)年季,默认格式:Q(示例:1)、yyyy-Q(示例:2016-1)、yyyyQQ(示例:2016Q1)、yyyy年Q季(示例:2016年1季)、第Q季度(示例:第1季度)

(3)年月,默认格式:yyyy-MM(示例:2016-01)、MM(示例:01月)、M月(示例:1月)等等。

(4)年周,默认格式:yyyy年ww周 (示例:2016年01周)、ww (示例:01)等。

(5)年月日,默认格式:yyyy-MM-dd (示例:2016-10-01)、MM-dd (示例:10-01)等等

如果已存在的数据格式无法满足,可以查阅:数据格式 进行新增显示格式。

2、电子表格如果需要使用数据模型时间维度设置的显示格式,需要在单元格属性勾选”使用显示值“,如下图:

Image Added

2、创建好时间维度,保存模型后,去创建交互式仪表盘,拖入柱图组件,把“年”、”销售量“、”销售额“ 拖入到X轴、Y轴:点击图形可以层层下钻,查看年月、年季、年月日的数据。

Image Added


3 标记为时间层次

信息
title前置条件

1、在同一个时间层次里面,如果一个维度/字段标记为时间层次,那么所有字段都应该标记,否则该层次结构无法正常使用。

2、所有数据类型都可以标记为时间层次,但是如果真实数据无法转化成时间格式,在报表层使用时会直接报错!

有一些场景,底层的数据没有标准的日期格式,比如数仓已处理好的大宽表本身没有“日期”字段,表中记录的是“年”、“年周”、"周",可以通过手工建层次结果目录,实现高级计算。

查看以”时间年-年月-年周“的钻取并且查看累计值"示例说明标记时间层次的使用方式。

示例数据下载:零售数据.csv

具体操作步骤:

1、创建数据模型并把execl数据导入到模型中

  • 在 模型的表字段属性 查看到”年“、”年“、”年月“是字符串类型,无法直接创建时间层次结构,但是可以通过 标记为时间层次 的实现下钻、上钻以及高级计算
  • 在维度区域,按住Ctrl+批量选中”年“、”年“、”年月“字段,再右键菜单 新建层次结构,填写层次结构名称,命名为“年-年月-周层次结构”,再点击 确定 ,会对应的字段存放到新建的层次结构中
  • 层次结构通常是按照先大类再小类的层次顺序结构创建,所以需要手工调整“年-年月-周”而不能是“年-周-年月”。
  • 选中“年-年月-周层次结构”下面的“年”字段,右键菜单/ 标记为时间层次,把年标记为时间层次并设置显示格式,层次的显示格式可查看 第2章节 内容 ;把“年月”、“周”都根据同样的方式标记为时间层次。

    Image Added   

2、构建好模型 之后,保存模型并且抽取,抽取成功后:

  • 新建分析,选择交互式仪表盘,拖入柱图,。
  • 在X、Y轴上拖入建好的层次结构 “年”、“销售量”。
  • 查看效果,柱图可以根据层次结构进行下钻,还可以实现快速计算

Image Added

4 基于时间维度的高级计算

信息
title前置条件

1、时间计算包含:报表层的 快速计算计算度量向导、计算度量表达式的时间计算;

2、如果在报表层(比如仪表盘)创建基于时间的计算,必须先在模型构建好  时间维度 ,然后 在行/列区拖入时间维度,才能正常使用 时间计算。

实现时间计算方式: