解构Tableau的绘图逻辑(三)

维度和度量(数据逻辑)

左侧的维度和度量功能区,这是我们绘制图表的基础。我们的数据源数据,在这里被抽象成了两种类型,维度(Dimensions)和度量(Measures)。我们就是通过维度和度量去构造我们的视图数据的。

作为抽象出来的概念,那么我们就需要具象地去理解这两种类型的数据。这里我仅做简单的介绍,有机会我会给大家详尽地讲述维度和度量的以及相关的进阶知识。

首先我们要引入一个在大数据分析中极为重要的概念 “聚合”,它是我们理解维度和度量的桥梁。对于数据分析师来说,往往关心的并不是最底层的明细数据。数据分析师更注重分析数据的角度,关心的是数据的总体特征。那么数据源里的数据如何从一行一行的,颗粒度最低的明细数据,变成数据分析师需要的更高层次(Level)的数据呢?这就需要对数据进行聚合。

所谓聚合,简单讲就是数据源里的多行数据按照一定的标准计算成一个数据,不管数据源里有1行还是多行,我们视图里的数据都是聚合后的结果,一行数据也是要聚合的,当然一行数据聚合的结果是一样的。

理解了聚合的概念,我们就可以理解维度和度量了。实际上,维度为数据聚合提供依据,而度量是依据维度聚合得到的结果。

比如下图这个简单的数据集。

我们拖动地区到行功能区,拖动销售额到文本,大家可以看到,销售额自动变成了SUM([销售额])。这里的地区是维度,它为这个视图数据提供了聚合的依据,SUM([销售额])是度量值,是按照地区这个维度,将销售额这列的值进行了聚合,而聚合的方式是求和(SUM函数)。

如果我们再把度量区自动生成的计数字段加进来,大家就可以看到,东北地区的销售额这个值14812,实际上是由地区是东北的4行数据得到的结果。

如果我们去分析探究数据源的话就会看到,地区这个字段一共有5个值,这5个值将数据分成了5个不同的组。东北地区这一组共4行数据,SUM([销售额])也就是这组里的4个销售额聚合(求和)的结果。华北地区这一组共2行数据,SUM([销售额])就是这组里2个销售额聚合(求和)的结果。而西南地区这一组只有1行数据,SUM([销售额])就是这组里1个销售额聚合(求和)的结果,也就是这个数据本身。

因此我们说,维度的作用就是将数据集进行分组,而度量值就在维度规定的组内进行聚合计算。

如果我们再拖动类别这个维度到列功能区,虽然我们的SUM([销售额])并没有变化,但是数据结果就完全不一样了。因为视图中增加了维度,现在SUM([销售额])的依据就是地区和类别这个两个维度共同决定的了,所以SUM([销售额])这个度量值的结果就由5个数据变成了9个数据,也就是说我们的数据集被这两个维度分成了9组。因为聚合的依据变化了,结果自然就不一样了, SUM([销售额])也就相应的依据这9组数据重新聚合生成9个不同的值。

这里也有一个特殊情况,假如我们在视图中不放任何维度,那SUM([销售额])的依据是什么呢?实际上,29015这个值是把整个数据集作为一个统一的维度来进行计算的。

因此我们可以说维度是聚合的依据,度量值是聚合的结果。度量值必然依赖于维度,不存在脱离于维度计算的度量值。

维度是大数据分析的中最重要的概念,是一切分析的基础,也是Tableau中构造视图数据的依据。几乎所有Tableau中的重要概念,比如详细级别表达式(LOD)、表计算、分区等都跟维度有关,可以说对维度的理解程度,决定了使用Tableau的高度,理解了维度就掌握了打开Tableau大门的钥匙。

你可能感兴趣的:(解构Tableau的绘图逻辑(三))