动态计算

<< Click to Display Table of Contents >>

当前位置:  制作可视化报告 > > 可视化分析 

动态计算

Previous pageReturn to chapter overviewNext page

动态计算器是表、交叉表和图表组件特有的,用来计算格子之间的数值变化。例如求同比,环比,年度百分比,总计百分比等等。此类计算器只能保持在单个组件里,不能被其他组件重复使用。

动态计算器指每个格子的数值是动态计算出来的,也可以称为是格间计算。主要解决在表格中沿着特定的方向来动态计算出数值。其中有两个要素,即计算方向,和计算方法(或函数)。

计算方向就跟表的结构有关系。如果想做产品关于季度增量的环比计算,就需要把产品字段和季度字段作为分组,沿着季度字段来计算。我们把分组叫做分区 (Partition)。沿着什么方向叫做基于的方向(Addressing)。

计算函数包括差值,百分比,差值百分比,汇总百分比,累积计算,移动计算,和排名计算。每一种计算函数都有一些特殊的属性和参数。

界面上提供了一些内置的计算函数和计算方向,用户也可以根据需要自定义计算函数和计算方向。对于自定义的计算函数,还可以使用二次计算的属性,即当前动态计算可使用其他动态计算的结果再做第二次计算。

 

添加动态计算器

1.在绑定的度量数据段的下拉列表中选择 “ 预定义的动态计算器 ”,在展开的子列表中选择想要添加的计算器:差值,百分比,差值百分比,汇总百分比,累积总计,移动计算,和排名计算。添加完以后,还可以在数据段的下拉列表中进行编辑。

2.在绑定的度量数据段的下拉列表中点击 “ 添加动态计算器 ”,弹出添加动态计算器的对话框,在该对话框中有三个选项 “ 计算 ”、 “ 计算依据 ” 以及 “ 差值 ”。其中 “ 计算依据 ” 选项在不同的组件中含有的内容不同。

dynamic1

 

分组与方向

分组即把组件中的数据进行分组,方向决定动态计算的顺序。例如一表中的数据如下图所示 :

dynamic2

把表按列进行分组,计算方向为纵向,计算函数为累积总计,结果如下表所示。按照蓝色框中的字段进行分组,红色框中的数据为计算方向。

dynamic3

用户定义的计算方向包括表格横向、表格纵向、表格横向然后纵向、表格纵向然后横向、沿平面横向、沿平面纵向、沿平面先横向再纵向、沿平面先纵向再横向、格子、高级。

假设一交叉表中行表头绑定了年和季度字段,列表头绑定了产品类别“PRODUCT_TYPE”和产品“PRODUCT”字段,汇总行绑定销售额“SALES”字段,如下图所示,此表将在下文中多次使用。

dynamic4

表格横向

在每个分组内沿水平方向进行计算。如下图所示季度产品的销售情况,当 Addressing 选择表格横向时,季度和年为 Partition,产品和产品类别为 Addressing。

dynamic5

分组情况如下图所示 :

dynamic6

表格纵向

在每个分组内沿垂直方向进行计算。如下图所示季度产品的销售情况,当 Addressing 选择表格纵向时,产品和产品类别为 Partition,季度和年为 Addressing。

dynamic7

分组情况如下图所示 :

dynamic8

表格横向然后纵向

在每个分组内先沿水平方向然后沿垂直方向进行计算。如下图所示季度产品的销售情况,当 Addressing 选择表格横向然后纵向时,所有字段既为 Partition 又为 Addressing。

dynamic9

所有字段作为分组,计算方式为表格横向进行计算然后到下一行,再沿表格横向继续进行计算。

dynamic10

表格纵向然后横向

在每个分组内先沿水平方向然后沿垂直方向进行计算。如下图所示季度产品的销售情况,当 Addressing 选择表格横向然后纵向时,所有字段既为 Partition 又为 Addressing。

dynamic9

所有字段作为分组,计算方式为表格纵向进行计算然后到下一列,再沿表格纵向继续进行计算。

dynamic11

沿平面横向

在每个平面内沿水平方向进行计算。注意平面是由绑定的倒数第二个维度字段确定的。

如下图所示季度产品的销售情况,当 Addressing 选择沿平面横向时,季度、年和产品类别为 Partition,产品作为 Addressing。

dynamic12

分组情况如下图所示 :

dynamic13

沿平面纵向

在每个分组内沿垂直方向进行计算。如下图所示季度产品的销售情况,当 Addressing 选择沿平面纵向时,年、产品类别和产品为 Partition,季度作为 Addressing。

dynamic14

分组情况如下图所示 :

dynamic15

沿平面先横向再纵向

在每个分组内先沿水平方向然后沿垂直方向进行计算。如下图所示季度产品的销售情况,当 Addressing 选择沿平面先横向再纵向时,年和产品类别作为 Partition,季度和产品作为 Addressing。

dynamic16

分组情况如下图所示,计算方式为平面横向进行计算然后到下一行,再沿平面横向继续进行计算。

dynamic17

沿平面先纵向再横向

在每个分组内先沿水平方向然后沿垂直方向进行计算。如下图所示季度产品的销售情况,当 Addressing 选择沿平面先横向再纵向时,年和产品类别作为 Partition,季度和产品作为 Addressing。

dynamic18

分组情况如下图所示,计算方式为平面纵向进行计算然后到下一列,再沿平面纵向继续进行计算。

dynamic19

格子

基于每个格子进行计算,此时所有字段都是 Partition,当计算占总数的百分比时尤其有使用价值。

高级

用户点击高级选项,则会弹出自定义桩对话框,如下图所示 :

dynamic20

【可用的列】可用的列中列出了当前组件中绑定的所有维度字段,包括图表的美化界面中绑定的维度字段。

【计算依据】用户可通过鼠标拖拽来设定计算依据那一个数据段进行分组计算。

例如:存在一个图表,如下图所示 。

dynamic21

用户需要分别计算 Small Market 和 Major Market 中每个 Market 的盈利占比情况。

用户需要在总和 _PROFIT 的下拉列表中选择添加动态计算器选项计算选择为汇总百分比,计算依据选择高级,汇总函数选择总和。

dynamic22

计算依据选择高级后,弹出自定义桩对话框,用户需要把 MARKET字段拖拽到计算依据列表中,即按照 MARKET 进行分组计算。

dynamic23

点击确定按钮后,选中图表,右边面板-绘图中去掉勾选数值标签的隐藏,使显示标记值,结果如下图所示 :

dynamic24

用户还可设定自定义桩的排序。如存在一交叉表,如下图所示 :

dynamic25

在“总和_PROFIT”字段的下拉列表中选择添加动态计算器按钮。在弹出的动态计算对话框中,计算选择差值,计算依据选择高级,差值选择向前,如下图所示:

dynamic26

计算依据选择高级后,弹出自定义桩对话框,用户需要把“季度”字段拖拽到计算依据列表中,即按照季度进行分组计算。

排序列选择 PROFIT,进行升序,聚合方式为总和。

dynamic27

计算前后如下图所示 : 产品 Amaretto 的四个季度的盈利由少到多的排序为第 3 季度,第 2 季度,第 4 季度,第 1 季度。由于动态计算是基于“总和_PROFIT" 进行升序计算,则动态计算的结果为第 3 季度为空,第 2 季度的值为 1077.0-972.0=105.0,第 4 季度值为 1352.0-1077.0=275.0,第 1 季度的值为 1489.0-1352.0=137.0。

dynamic28