图中是我们想要实现的条形图分析
不同地区市场,各年度、不同客户矩阵贡献的销售收入,这里以tableau自带的数据源为例
为了理解不同地区市场,各年度、不同客户矩阵贡献的销售收入,现在我们初步深入讲解,先从下面一个简单的问题入手
不同订单年度、不同地区的销售收入
1.首先将Sales移动到行,Order Date移动到列,将自动改为条形图
2.将Region拖入到颜色(维度代表问题的层次,这里的维度是年*地区)
这里就完成了不同订单年度、不同地区的销售收入,现在我们再来看不同地区市场,各年度、不同客户矩阵贡献的销售收入,唯一不同的是区别在于把地区换成了客户矩阵。客户矩阵是什么意思呢
它指的是客户所在的年度或者说是获客的年度,第一次订单日期所在的年度(每个客户首次的订单日期),假如客户A订单日期为2020/1/8,2021/3/8,那么客户A首次订单日期为2020/1/8,取年则为2020
现在我们先拆解这个问题,单独来看怎么显示每个客户首次的订单日期
1.先将Customer Name,Order ID,Order Date移动到行
2.在行上创建min(DATEPART('year', [Order Date])),按住ctrl将Order Date移动到min()函数里面,并将连续改为离散
此时我们发现min(DATEPART('year', [Order Date]))与Order Date显示的年份一摸一样,这是为什么呢
维度是聚合的依据,这这里维度是Customer Name、Order ID Order Date,min(DATEPART('year', [Order Date]))的聚合是以Customer Name、Order ID、Order三者的层级来确定的,所以就变成了每一个订单的日期
这个时候如果把Order ID、Order Date拿走
此时维度只有Customer Name,而维度是聚合的依据,此时min(DATEPART('year', [Order Date]))
是以Customer Name为聚合的依据,也就是每个客户的首次订单日期
现在我们再来看不同地区市场,各年度、不同客户矩阵贡献的销售收入
前面保持一致,如下图
1.将min(DATEPART('year', [Order Date]))移动到
2.将min(DATEPART('year', [Order Date]))移动到颜色
此时为什么不对呢,经过上面就知道,维度是聚合的依据,这里的维度是在列上的年(Order Date)
那么min(DATEPART('year', [Order Date]))就是以年(Order Date)为依据聚合的,聚合结果就是每年最小的订单日期,而不是每个客户的最小订单日期,也就是每个客户的首次订单日期,所以这时就要用FIXED LOD表达式,指定聚合的依据
3.将min(DATEPART('year', [Order Date]))按照Customer Name为维度进行聚合,即修改为{FIXED Customer Name:min(DATEPART('year', [Order Date]))},并重命名为first-order-date,切记此时first-order-date为维度,不是度量
4.最后按住ctrl将{FIXED Customer Name:min(DATEPART('year', [Order Date]))}拖入到标签
5.将地区Region拖入到筛选器,以central为例,这样就完成了Central地区,各年度、不同客户矩阵贡献的销售收入,同理可以筛选其它地区
最后我们就完成了不同地区,各年度、不同客户矩阵贡献的销售收入