1. 程式人生 > >從零開始Tableau | 12.表計算-特定維度

從零開始Tableau | 12.表計算-特定維度

從零開始Tableau | 12.表計算-特定維度

理清特定維度的定址和分割槽,基本可以搞定表計算的日常應用需求,本節記錄要點:

  • 為什麼要用特定維度
  • 單維度應用
  • 雙維度應用

為什麼要用特定維度

tableau中的表計算,計算依據中預設封裝了表、區的多種計算方式,極大方便了表計算的日常操作。但是這些“快捷方式”也存在一個問題,就是如果檢視的行列功能區欄位進行了交換,計算可能會發生改變。

舉個例子,這裡建立了地區、類別和訂單日期的交叉表,計算依據選擇了區(橫穿,然後向下),如下圖所示:

  • ① 列功能區為訂單日期欄位;行功能區為地區和類別欄位。
  • ② 計算依據為區(橫穿,然後向下)。
  • ③ 箭頭方向為先按訂單日期橫穿再按類別向下
區(橫穿,然後向下)行列交換示例
區(橫穿,然後向下)行列交換示例

 

當交換行和列後,即原來的地區欄位交換到“列”功能區、訂單日期欄位交換到“行”功能區,計算依據此時仍然是表(橫穿,然後向下),即箭頭方向沒有改變,但計算結果卻發生了改變。從檢視可以看到,箭頭方向變為了按類別橫穿再按訂單日期向下,與行列欄位交換前正好相反。

圖:表(橫穿)檢視行列交換結果示例
圖:表(橫穿)檢視行列交換結果示例

 

要讓tableau在行列交換同時,定址欄位和定址順序同步調整,並使最終計算結果保持不變,則需要使用計算依據中的另一種方式——特定維度。

選擇“特定維度”後,就會出現該檢視使用到的所有維度欄位供選擇。

圖:特定維度欄位示例
圖:特定維度欄位示例

 

簡單理解,特定維度就是讀取資料的路徑和順序,tableau會根據選擇的特定維度,將這些維度的分類資料全部讀取,這樣就表示完成了一個分割槽,然後再進行下一個分割槽的讀取。

單維度應用

檢視中,有三個維度,分別是訂單日期、地區、類別,這裡依次選擇單個維度來觀察tableau讀取資料的路徑和順序的變化。

訂單日期

選擇訂單日期作為單一維度。

圖:訂單日期單維度選擇示例
圖:訂單日期單維度選擇示例

 

tableau會按照訂單日期欄位中的2015、2016、2017、2018,依次讀取,從2015開始,到2018結束,這就完成了一個完整的讀取週期,然後又接著下一行重新讀取。

圖:訂單日期維度表計算示例
圖:訂單日期維度表計算示例

 

地區

選擇地區作為單一維度。

圖:地區單維度選擇示例
圖:地區單維度選擇示例

 

tableau會按照地區欄位中的東北、華北、華東、西北、西南、中南,依次讀取,從東北開始,到中南結束,這就完成了一個完整的讀取週期,對該檢視而言,也就完成了整個檢視資料的讀取。

圖:地區維度表計算示例
圖:地區維度表計算示例

 

類別

選擇類別作為單一維度。

圖:類別維度表計算示例
圖:類別維度表計算示例

 

tableau會按照類別欄位中的辦公用品、技術、傢俱,依次讀取,從辦公用品開始,到傢俱結束,這就完成了一個完整的讀取週期,然後又接著下一行重新開始讀取。

圖:地區維度表計算示例
圖:地區維度表計算示例

 

雙維度應用

檢視中,分別從訂單日期、地區、類別三個維度中,任意選擇兩個維度,通過維度的不同組合及不同順序,觀察tableau讀取資料的路徑和順序的變化。

所在級別

當選擇了兩個維度的時候,計算依據視窗下方的“所在級別”選項卡變為了可選擇狀態,裡面有一個選項叫“最深”,該選項的執行邏輯是:勾選的維度自下而上讀取,簡單的說就是,下面的先讀取,上面的後讀取。

圖:所在級別"最深"示例
圖:所在級別"最深"示例

 

訂單日期維度和地區維度

按照讀取順序,分為訂單日期+地區以及地區+訂單日期

首先看訂單日期+地區

圖:訂單日期+地區維度示例
圖:訂單日期+地區維度示例

 

按照“最深”原則,先讀取訂單日期,再讀取地區。

訂單日期有四個,2015開始,2018結束

地區有六個,東北開始,中南結束

讀取時,先在東北對應的訂單日期從左往右讀取,即2015開始到2018結束,然後接著從華北對應的訂單日期從左往右讀取,2015開始到2018結束,一直讀到中南結束,至此完成一個完整的讀取週期。

推測的箭頭方向如下

圖:訂單日期+地區箭頭方向示例
圖:訂單日期+地區箭頭方向示例

 

實際的數字方向如下

圖:訂單日期+地區數字方向示例
圖:訂單日期+地區數字方向示例

 

接著看訂單日期與地區先後順序交換後的變化,即地區+訂單日期

圖:地區+訂單日期維度示例
圖:地區+訂單日期維度示例

 

按照“最深”原則,先讀取地區,再讀取訂單日期。

地區有六個,東北開始,中南結束

訂單日期有四個,2015開始,2018結束

讀取時,先在2015對應的地區從上往下讀取,即東北開始到中南結束,然後接著從2016對應的地區從上往下讀取,東北開始到中南結束,一直讀到2018結束,至此完成一個完整的讀取週期。

推測的箭頭方向如下

圖:地區+訂單日期箭頭方向示例
圖:地區+訂單日期箭頭方向示例

 

實際的數字方向如下

圖:地區+訂單日期數字方向示例
圖:地區+訂單日期數字方向示例

 

訂單日期維度和類別維度

按照讀取順序,分為訂單日期+類別以及類別+訂單日期

首先看訂單日期+類別

圖:訂單日期+類別維度示例
圖:訂單日期+類別維度示例

 

按照“最深”原則,先讀取訂單日期,再讀取類別。

訂單日期有四個,2015開始,2018結束

類別有三個,辦公用品開始,家居結束

讀取時,先在辦公用品對應的訂單日期從左往右讀取,即2015開始到2018結束,然後接著從技術對應的訂單日期從左往右讀取,2015開始到2018結束,一直讀到傢俱結束,至此完成一個完整的讀取週期。然後又接著下一行重新開始。此時的地區為分割槽欄位。

推測的箭頭方向如下

圖:訂單日期+類別箭頭方向示例
圖:訂單日期+類別箭頭方向示例

 

實際的數字方向如下

圖:訂單日期+類別數字方向示例
圖:訂單日期+類別數字方向示例

 

接著看訂單日期與地區先後順序交換後的變化,即類別+訂單日期

圖:類別+訂單日期維度示例
圖:類別+訂單日期維度示例

 

按照“最深”原則,先讀取類別,再讀取訂單日期。

類別有三個,辦公用品開始,傢俱結束

訂單日期有四個,2015開始,2018結束

讀取時,先在2015對應的類別從上往下讀取,即辦公用品開始到傢俱結束,然後接著從2016對應的類別從上往下讀取,辦公用品開始到傢俱結束,一直讀到2018結束,至此完成一個完整的讀取週期。然後接著往下一行重新開始。地區在這裡是分割槽欄位。

推測的箭頭方向如下

圖:類別+訂單日期欄位箭頭方向示例
圖:類別+訂單日期欄位箭頭方向示例

 

實際的數字方向如下

圖:類別+訂單日期欄位數字方向示例
圖:類別+訂單日期欄位數字方向示例

 

地區和類別維度

按照讀取順序,分為地區+類別以及類別+地區。

首先看地區+類別

圖:地區+類別欄位示例
圖:地區+類別欄位示例

 

按照“最深”原則,先讀取地區,再讀取類別。

地區有六個,東北開始,中南結束

類別有三個,辦公用品開始,傢俱結束

讀取時,先在辦公用品對應的地區從上往下讀取,即東北開始到中南結束,然後接著從技術對應的地區從上往下讀取,東北開始到中南結束,至此完成一個完整的讀取週期。然後接著往下一列重新開始。訂單日期在這裡是分割槽欄位。

推測的箭頭方向如下

圖:地區+類別欄位箭頭方向示例
圖:地區+類別欄位箭頭方向示例

 

實際的數字方向如下

圖:地區+類別欄位數字方向示例
圖:地區+類別欄位數字方向示例

 

接著看地區與類別先後順序交換後的變化,即類別+地區

圖:類別+地區欄位示例
圖:類別+地區欄位示例

 

按照“最深”原則,先讀取類別,再讀取地區。

類別有三個,辦公用品開始,傢俱結束

地區有六個,東北開始,中南結束

讀取時,先在東北對應的類別從上往下讀取,即辦公用品開始到傢俱結束,然後接著從華北對應的類別從上往下讀取,辦公用品開始到傢俱結束,一直讀完中南,至此完成一個完整的讀取週期。訂單日期在這裡是分割槽欄位。

推測的箭頭方向如下

圖:類別+地區欄位箭頭方向示例
圖:類別+地區欄位箭頭方向示例

 

實際的數字方向如下

圖:類別+地區欄位數字方向示例
圖:類別+地區欄位數字方向示例