閱讀720 返回首頁    go 阿裏雲 go 技術社區[雲棲]


獨家 | 手把手教數據可視化工具Tableau

640?wx_fmt=png&wxfrom=5&wx_lazy=1


前言


數據的世界正在發生急劇變化,任何人都應該訪問自己需要的數據,並具備獲取任何數據的洞察力,而tableau正是幫我們洞察數據的好幫手。


Tableau作為BI tool leader ( 2016 Gartner BI chart), 它不僅是一款可視化軟件,還具備不可忽略的強大的Data connection, collaboration, security management, multi-platform功能性:

  • Data connection:Tableau Desktop可直接連接Salesforce(銷售報表),各類常用數據庫(sql, aws, hadoop, SAP HANA), Google analytics ( 流量分析),最新的版本10支持連接json文件

  • Data refreshment:實現全部報表定時自動從元數據更新

  • Data preparation and data processing:在2016年的Tableau大會上, Tableau宣布即將推出一款自動化data preparation的產品,並展示了收購Hyper後可以做到幾秒內ingest百萬級的數據

  • Security management:很輕易地添加user, 設置user group,且可通過tabcmd在terminal中自動完成用戶管理

  • Multi-platform:在網頁,手機,tablet間實現跨平台的可視化


我認為學習Tableau最主要的一點是要了解它的用法特點,尤其是和Excel的不同之處。從我在學習和製作Tableau報表的時候得出了一定的經驗,學習者一定要謹記以下四點:

  • 可視化(誰都知道Tableau是可視化專家,但你真的知道怎麼用可視化嗎?)

  • 聚焦/深挖 (上可看整個公司麵貌,下可聚焦到單個產品/顧客)

  • 靈活分析

  • 交互化圖表(我認為Tableau最強的地方)

Tableau工作區


Tableau 工作區包含菜單、工具欄、“數據”窗格、卡和功能區以及一個或多個工作表,表可以是工作表、儀表板或故事。


工作表包含功能區和卡,您可以向其中拖入數據字段來構建視圖。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


A. 工作簿名稱。

B. 卡和功能區 - 將字段拖到工作區中的卡和功能區,以將數據添加到您的視圖中。

C. 工具欄 - 使用工具欄訪問命令以及分析和導航工具。

D. 視圖 - 這是您在其中創建數據可視化的工作區。

E. 轉到開始頁麵。

F. 側欄。側欄提供兩個窗格:“數據”窗格和“分析”窗格。

G. 轉到數據源頁麵。

H. 狀態欄 - 顯示有關當前視圖的信息。

I. 工作表標簽 - 標簽表示工作簿中的每個工作表,這可能包括工作表、儀表板和故事。

Tableau概念


為何有一些字段維度和其他度量?添加篩選器將對我的視圖產生什麼影響?為何一些字段的背景顏色是藍色,而另外一些字段的背景顏色是綠色?


本節中的主題將嚐試闡明這些問題,以及有關您在使用 Tableau Desktop 可以看到和體驗到的功能的其他問題。


數據類型


數據源中的所有字段都具有一種數據類型。數據類型反映了該字段中存儲的信息的種類,例如整數 (410)、日期 (1/23/2015) 和字符串(“Wisconsin”)。字段的數據類型在“數據”窗格中由以下所示的圖標之一來標識。


1. Tableau 中的數據類型圖標


640?wx_fmt=png&wxfrom=5&wx_lazy=1


您可以在“數據源”頁麵上或“數據”窗格中更改字段的數據類型。


2. 在“數據源”頁麵中更改字段的數據類型


有時,Tableau 會不正確地解釋字段的數據類型。例如,Tableau 可能會將包含日期的字段解釋為整數數據類型,而不是日期數據類型。


此時您可以在“數據源”頁麵上更改曾經作為原始數據源一部分的字段(而不是在 Tableau 中創建的計算字段)的數據類型:


STEP 1:單擊字段的字段類型圖標(如上表中所示)。


STEP 2: 從下拉列表中選擇一種新數據類型:


640?wx_fmt=png&wxfrom=5&wx_lazy=1


提示:確保在創建數據提取之前更改數據類型。否則,數據可能會不正確。舉例來說,如果 Tableau 將原始數據源中的浮點字段解釋為整數,並且您在更改字段的數據類型之前創建數據提取,則 Tableau 中生成的浮點字段的部分精度將被截斷。


3. 在“數據”窗格中更改字段的數據類型


若要在“數據”窗格中更改字段的數據類型,請單擊字段名稱左側的圖標,然後從下拉列表中選擇一種新數據類型。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


4. 在視圖中更改字段的數據類型


若要在視圖中更改字段的數據類型,請在“數據”窗格中右鍵單擊(在 Mac 中按住 Control 單擊)字段,選擇“更改數據類型”,然後從下拉列表中選擇相應數據類型。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


注意: 有時,數據庫中數據的精度比 Tableau 可以建模的精度更高。在將這些值添加到視圖中時,狀態欄的右側將顯示一個精度警告。


5. 文件中數據的混合數據類型


Microsoft Excel、Microsoft Access、或 CSV(逗號分隔值)文件中的大多數列都包含相同數據類型(布爾值、日期、數字或文本)的值。 連接到該文件時,Tableau 會在“數據”窗格的相應區域中為每列創建一個字段,日期和文本值為維度,數字為度量。


但是,您連接到的文件所包含的列可能具有混合數據類型,例如數字和文本,或者數字和日期。連接到該文件時,混合值列將映射到 Tableau 中具有單一數據類型的字段。因此,包含數字和日期的列可能會映射為數字數據類型(將其設為度量),或者可能會映射為日期數據類型(這種情況下 Tableau 將其視為維度)。


Tableau 根據 Excel 數據源中前 10,000 行和 CSV 數據源中前 1,024 行的數據類型來確定如何將混合值列映射為數據類型。舉例來說,如果前 10,000 行中大多數為文本值,那麼整個列都映射為使用文本數據類型。

注意: 空單元格也可以創建混合值列,因為它們的格式不同於文本、日期或數字。


當 Tableau 確定每個字段的數據類型時,如果某個字段中的值與該數據類型不匹配, Tableau 就會采用若幹不同方式之一來處理字段,具體情況視數據類型而定。例如,有時 Tableau 會用 Null 值填充那些字段,如下表中所示:

 

640?wx_fmt=png&wxfrom=5&wx_lazy=1

 

如果在分析數據時使用基於混合值列的字段時遇到困難,則可以執行以下操作之一:


  • 對基礎數據源中的空單元格設置格式,使它們與列的數據類型相匹配。

  • 創建一個不包含混合值的新列。


字段類型


連接到新數據源時,Tableau 會將該數據源中的每個字段分配給“數據”窗格的“維度”區域或“度量”區域,具體情況視字段包含的數據類型而定。如果字段包含分類數據(例如名稱、日期或地理數據),Tableau 會將其分配給“維度”區域;同理如果字段包含數字,Tableau 則會將其分配給“度量”部分。


那麼,可不可以說維度就是包含分類數據(例如名稱、日期或地理數據)的字段,度量就是包含數字的字段?以這些斷言作為出發點是足夠準確的,但當您在 Tableau 中工作時,請記住您可以控製視圖中字段的定義。根據用戶的要求,大多數字段都可用作維度或用作度量,並且可以為連續或離散。


Tableau 將字段分配給“維度”區域或“度量”區域進行初始分配時建立了默認值。當您單擊並將字段從“數據”窗格拖到視圖時,Tableau 將繼續提供該字段的默認定義。如果從“維度”區域中拖動字段,視圖中生成的字段將為離散字段(帶有藍色背景);如果從“度量”區域中拖動字段,生成的字段將為連續字段(帶有綠色背景)。


注意:如果您希望能夠指示 Tableau 如何將拖到視圖的某個字段進行分類,以便覆蓋默認值,請在將其拖到視圖之前右鍵單擊(在 Mac 上按住 Control 單擊)該字段,Tableau 將提示您在指定放下該字段時如何在視圖中使用它。


默認情況下,維度是離散的,度量是連續的,但事實上所有四種組合都有可能:

 

640?wx_fmt=png&wxfrom=5&wx_lazy=1

 

注意: 對於多維數據集(多維)數據源(僅在 Windows 上受支持),它用於更改數據角色的選項受到限製。您可以將某些度量從連續更改為離散,但通常無法更改多維數據集數據源中字段的數據角色。


1. 維度和度量


當您連接到數據源時,Tableau 會將數據源中的每個字段分配為扮演兩個可能的數據角色之一:維度或度量。 當您開始在 Tableau 中處理數據時,這些分配有什麼效果?


1.1 維度


當您第一次連接到數據源時,Tableau 會將包含離散分類信息的任何字段(例如,值為字符串或布爾值的字段)分配給“數據”窗格中的“維度”區域。


當您單擊並將字段從“維度”區域拖到“行”“列”時,Tableau 將創建列或行標題。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


“維度”區域拖出的任何字段在添加到視圖時一開始為離散,帶有藍色背景。因此,您可能會順理成章地假定字段的背景顏色指明了它是維度還是度量(但結果證明這樣做是不正確的)。但是日期維度和數值維度可能為離散維度或連續維度,所有度量也都可能為離散度量或連續度量。字段的背景顏色指明它是離散(藍色)還是連續(綠色)。


將維度拖到“行”“列”時,隻需通過單擊字段並選擇“度量”便可將字段更改為度量。現在,視圖將包含一個連續軸(而不是列或行標題),並且字段的背景將變為綠色:

 

640?wx_fmt=png&wxfrom=5&wx_lazy=1


如果要將維度設為連續(在未首先將其轉換為度量的情況下),則您的選項有限。您隻能對日期維度(日期維度可能為離散或連續,但始終是維度)和數值維度這樣做,並且您無法轉換包含字符串或布爾值的維度。


Tableau 不會對維度進行聚合。如果要對字段的值進行聚合,則該字段必須為度量。將維度轉換為度量時,Tableau 將始終提示您為其分配聚合(計數、平均值等)。聚合表示將多個值(單獨的數字)聚集為一個數字,通過對單獨值進行計數、對這些值求平均值或顯示數據源中任何行的最小單獨值來實現。有關 Tableau 可執行的不同類型聚合的論述,請參見聚合(https://onlinehelp.tableau.com/current/pro/desktop/zh-cn/calculations_aggregation.html)


在 Tableau 查詢中,視圖中的維度的 SQL 表示形式為“Group By”子句。


1.2 度量


當您第一次連接到數據源時,Tableau 會將包含定量數值信息的任何字段(即其中的值為數字的字段)分配給“數據”窗格中的“度量”區域。


當您將字段從“度量”區域拖到“行”“列”時,Tableau 將創建連續軸。

 

640?wx_fmt=png&wxfrom=5&wx_lazy=1


從“度量”區域拖出的任何字段在添加到視圖時一開始將為連續,因此其背景將顯示為綠色,但如果您單擊字段並選擇“離散”,則值將變為列標題。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


然而Tableau 會繼續對字段的值進行聚合。因為即使該字段現在為離散,但它仍然是度量,而 Tableau 會始終對度量進行聚合。如果有意願您可以再進一步執行過程,將度量轉換為維度。隻有這樣,Tableau 才會停止對其值進行聚合。


1.3 視圖中維度和度量的可視標識


如果您在 Tableau Desktop 中查看視圖,並且不確定某個字段是度量還是維度,一個快速的視覺提示已聚合度量: gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAA

而維度則不是:gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAA


但是存在以下例外:


  • 如果解聚整個視圖,則不會根據定義來聚合視圖中的字段。如果您使用的是多維數據源,則會在數據源中聚合字段,但視圖中的字段不顯示該聚合。

 

1.4 將度量轉換為維度


您可以將視圖中的字段從度量轉換為維度。


或者,如果您希望變更影響工作簿中所有的將來使用該字段的情形,您可將“數據”窗格中的字段從度量轉換為維度。


1)將視圖中的度量轉換為離散維度


您可以從“數據”窗格中的“度量”區域拖動字段,但隨後將其用作視圖中的維度。例如,假設您想要了解每個可能的折扣率的聚合總銷售額,那麼您期望的視圖如下所示:


640?wx_fmt=png&wxfrom=5&wx_lazy=1


“Discount”(折扣)字段包含數值數據,因此當您連接到數據源時,Tableau 會將其分配給“數據”窗格中的“度量”區域。在 Tableau Desktop 附帶的“Sample - Superstore”數據源中,“Discount”(折扣)的值範圍為 0% 至 80%。


下麵是用於創建上麵所示的視圖的步驟:


STEP 1:“Sales”(銷售額)拖到“行”,將“Discount”(折扣)拖到“列”。Tableau 將顯示一個散點圖 — 這是當您將一個度量放在“行”上並將另一個度量放在“列”上時的默認圖表類型。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


Tableau 以 AVG 形式聚合“Discount”(折扣),並以 SUM 形式聚合“Sales”(銷售額)。這些字段都是連續的,因此 Tableau 將沿視圖的底部和左側顯示軸(而不是列或行標題)。


STEP 2: 若要將“Discount”(折扣)視為維度,請單擊字段(在“列”功能區上)的下拉箭頭,並從上下文菜單中選擇“維度”。Tableau 不再聚合“Discount”(折扣)的值,因此您現在將看到一條線;但“Discount”(折扣)的值仍然是連續的,因此 Tableau 仍將為兩個字段顯示連續軸:


640?wx_fmt=png&wxfrom=5&wx_lazy=1


STEP 3: 再次單擊“Discount”(折扣)並從上下文菜單中選擇“離散”以完成該過程。“Discount”(折扣)的轉換現已完成,您現在將看到本主題開頭初始圖像中的條形圖。您現在將在底部看到列標題(0%、10%、20% 等),而不是軸。


讓我們回顧一下我們是如何實現此目標的:

 

640?wx_fmt=png&wxfrom=5&wx_lazy=1


現在隻需將“Sales”(銷售額)拖到“標簽”,然後設置標簽格式以提高可讀性。


由於數據源中的“Discount”(折扣)隻有 12 個唯一的值,因此生成的圖表有一定作用。假如每行有一個唯一的值(這種情況對於數值字段很少見),那麼生成的視圖中單獨條形的數量將與數據源中的行數相等,生成的可視化內容將有可能不起用。


2)將“數據”窗格中的度量轉換為維度


當您第一次連接到數據源時,Tableau 會將包含定量數值信息的大多數字段(即其中的值為數字的字段)分配給“數據”窗格中的“度量”區域。對於名稱表明數據類型的字段,例如“年”或“月”(Tableau 會將其識別為“日期”維度),或者包含諸如“ID”和“鍵”的字詞的字段(Tableau 會將其分類為維度,即使這些字段是數值字段),則情況有所不同。


但是,您可能會決定 Tableau 已分類為度量的其中一些字段實際上應該是維度。郵政編碼是很經典的示例 — 它們通常完全由數字組成,但信息是分類信息而不是連續信息 — 您絕不會希望通過對郵政編碼進行加總或求平均值來聚合郵政編碼。


同樣,在 Tableau 中,默認情況下可能會將包含單獨年齡的字段分類為度量,因為它包含數值數據。在某些情況下,您可能想要對年齡進行加總或求平均值,但也可能想要以數據桶或類別的形式查看每個單獨的年齡,這種情況下您會希望 Tableau 為此字段創建標題(而不是軸)。如果希望以這種形式在視圖中使用年齡,您可以將字段轉換為維度。


若要在“數據”窗格中將度量轉換為維度,請執行以下任一操作。


  • 單擊該字段並將其從“數據”窗格的度量區域拖放到維度區域中。

640?wx_fmt=png&wxfrom=5&wx_lazy=1


  • “數據”窗格中右鍵單擊(在 Mac 上按住 Control 單擊)度量,並選擇“轉換為維度”


如果將從度量轉換為維度的字段放在功能區上,則該字段會生成標題(而不是軸)。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


1.5 維度和詳細級別


將維度添加到“行”“列”時,視圖中標記的數量會增加。若要了解為何添加維度會增加視圖中標記的數量,請執行以下操作:


STEP 1:“Segment”(細分市場)拖到“列”


Tableau 窗口底部的狀態欄顯示視圖中現在有三個標記:


640?wx_fmt=png&wxfrom=5&wx_lazy=1


這些標記隻包含占位符文本 Abc,因為您此時隻構建了視圖的結構。


STEP 2:“Region”(區域)拖到“列”


現在有 12 個標記。“Segment”(細分市場)中的三個值乘以“Region”(區域)中的四個值,結果為 12。


STEP 3:“[Ship Date]”([發貨日期])拖到“行”


現在共有 57 個標記(三個細分市場乘以四個區域,再乘以五年,結果為 60,但視圖中有三個在數據源中沒有數據的維度組合)。


我們可繼續向“行”“列”中添加維度,並能觀察到標記的總數持續增加。將維度拖到“標記”卡上的一個位置(例如“顏色”或“大小”)將也會增加標記的數量,但不會增加視圖中標題的數量。向視圖中添加維度來增加標記數量的過程稱為設置詳細級別。


將維度添加到 Tableau 中的以下任何位置會對詳細級別產生影響:


640?wx_fmt=png&wxfrom=5&wx_lazy=1


STEP 4:視圖現在包含 57 個單獨的 Abc 實例 — 視圖都是結構,沒有內容。通過將“Sales”(銷售額)拖到到“文本”來調整這一點。現在可以認為視圖是完整的:


640?wx_fmt=png&wxfrom=5&wx_lazy=1


說明:

1. 某些情況下,向視圖中添加度量可能會增加視圖中標記的數量。舉例來說,如果將“Sales”(銷售額)放在上麵視圖中的“行”上,標記的數量為 57;但如果隨後也將“Profit”(利潤)放在“行”上,標記的數量將增加到 114。但這與更改視圖的詳細級別不同。

2. 視圖中標記的數量並不保證會與您將組成詳細級別的每個維度中的維度值數量相乘所得到的數量對應,而標記數量可能較低的原因有多種。若要將此視圖中標記的數量從 57 增加到上麵視圖中的 60,請右鍵單擊(在 Mac 上按住 Control 單擊)視圖中的日期標題之一以及日期或數據桶標題,並選擇顯示缺失值”

 

640?wx_fmt=png&wxfrom=5&wx_lazy=1


2. 連續和離散


連續和離散是數學術語,連續意指“構成一個不間斷的整體,沒有中斷”;離散意指“各自分離且不同”。


在 Tableau 中,字段可分為連續或離散。當您將字段從“度量”區域拖到“列”“行”時,值默認情況下將是連續的,並且 Tableau 將創建軸;將字段從“數據”窗格的“維度”區域拖到“列”“行”時,值默認情況下將是離散的,並且 Tableau 將創建列或行標題。讓我們考慮一下為何為這樣。


2.1 連續字段生成軸


如果字段包含可以加總、求平均值或以其他方式聚合的數字,則 Tableau 會在您第一次連接到數據源時將該字段分配給“數據”窗格的“度量”區域。Tableau 假定這些值是連續的。


當您將連續字段放在“行”“列”上時,Tableau 會顯示一個軸。軸是一個顯示最小值和最大值之間的值的度量線,標尺和模擬溫度計是顯示軸的物品的例子。


Tableau 必須能夠顯示一係列實際值和可能值,因為除了數據源中的初始值之外,您在視圖中處理連續字段時始終可能會出現新值。


盡管連續軸上有值標簽(下圖中的 0、0.5、... 3.0),但實際標記不必像與列標題對齊一樣與這些標簽對齊。例如,在下圖中,藍色條形實際上延伸到了水平軸上的值 6.940,而不是確切地延伸到 7.0。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


連續字段的可能值的數量無法預計。舉例來說,如果有一個名為“Rating”(評級)的字段,並且初始值為 1、3、3.5、3.6 和 4,即五個離散值。但如果您將“Ratings”(評級)放在“行”上,Tableau 會自動以 SUM 的形式聚合該值(您隨後會立即將其更改為 AVG,因為與將等級加總相比,對等級求平均值更有邏輯),而這樣會隨後創建第六個值 (3.02),在您向視圖中添加字段之前,該值並不存在。並且,如果您隨後應用了排除兩個初始值的篩選器,平均值也將更改,該值會將是另一個值。然後您更改了聚合,... 您就明白了。可能值的數量即使不是無限,也肯定是巨大的。


字段包含數字的事實並不必然表明這些值是連續的。郵政編碼就是很經典的例子:盡管郵政編碼通常完全由數字組成,但它們實際應該是絕不會加總或求平均值的字符串值。如果 Tableau 將此類字段分配給“度量”區域,您應將其拖到“維度”區域。


2.2 離散字段創建標題


如果某個字段包含的值是名稱、日期或地理位置(不是數字的任何內容),Tableau 會在您第一次連接到數據源時將該字段分配給“數據”窗格的“維度”區域,Tableau 將值視為離散。


當您將離散字段放在“列”“行”上時,Tableau 會創建標題,離散字段的單獨值將成為行或列標題。(由於絕不會對此類值進行聚合,所以在您處理視圖時不會創建新字段值,因此就不需要軸。)


2.3 辨別差異


如果字段為連續,則背景顏色為綠色;如果字段為離散,則背景顏色為藍色。背景顏色並非指明維度與度量的對比,而是指明連續與離散的對比。


辨別視圖中的字段是度量還是維度的依據在於該字段是否已聚合。


在下麵左側的視圖中,從“數據”窗格的“度量”區域中拖來的“Quantity”(數量)已從度量轉換為維度,但仍然是連續的,在視圖的底部顯示了一個軸。我們之所以知道該字段是連續的,原因就在於該軸,並且它的背景為綠色;而我們之所以知道該字段是維度,原因在於它未聚合。


在右側的視圖中,已通過在“列”功能區上單擊“Quantity”(數量)並選擇“離散”對視圖進行了進一步修改。 現在視圖的底部顯示標題,而不是軸。

640?wx_fmt=png&wxfrom=5&wx_lazy=1


2.4 應包括在視圖中的離散字段


當您將離散字段放在“篩選器”功能區上時,Tableau 將提示您選擇應在視圖中包括離散字段的哪些“成員”。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


將“日期”字段放在“篩選器”上時,結果可能為離散篩選器或連續篩選器。


當您將連續度量放在“篩選器”上時,Tableau 將首先提示您為篩選器選擇聚合,然後提示您指定如何對連續的值範圍進行篩選。


當您將連續維度放在“篩選器”(而不是“日期”)上時,Tableau 將提示您指定如何對連續的值範圍進行篩選。


2.5 顏色的含義


當您將離散字段放在“顏色”上時,Tableau 將顯示一個分類調色板,並為字段的每個值分配一種顏色。


當您將連續字段放在“顏色”上時,Tableau 將顯示一個具有連續顏色範圍的定量圖例。

 

2.6 在離散和連續之間轉換字段


您可以將度量從離散轉換為連續,或從連續轉換為離散。並且,您可以將日期維度和其他數值維度轉換為離散或連續。


  • 轉換度量


您可以將度量從離散轉換為連續,或從連續轉換為離散。單擊字段並選擇“離散”“連續”,字段為連續時將顯示為綠色,字段為離散時將顯示為藍色。


對於“數據”窗格中的度量,右鍵單擊字段並選擇“轉換為離散”“轉換為連續”,那麼字段的顏色將相應發生變化。


  • 轉換日期字段


您可以在離散和連續之間轉換日期字段。單擊視圖中的任何日期字段,並選擇上下文菜單上的選項之一,便可將該字段從離散轉換為連續,或從連續轉換為離散:

 

640?wx_fmt=png&wxfrom=5&wx_lazy=1

 

說明:

1. 單擊藍色區域中的任何選項可將字段配置為離散日期。
選擇這些選項之一將創建所謂的“日期部分”。

2. 單擊綠色區域中的任何選項可將字段配置為連續日期。
選擇這些選項之一將創建所謂的“截斷日期”。

   

若要轉換“數據”窗格中的日期字段(並因此確定在將該字段拖到視圖中時的默認結果),請右鍵單擊該字段並選擇“轉換為離散”“轉換為連續”


Tableau的操作順序


Tableau 中的操作順序(有時稱為查詢管道)是指 Tableau 將執行各種動作的順序(動作也稱為操作)。


許多操作都應用篩選器,這意味著,在您構建視圖和添加篩選器時,這些篩選器始終按操作順序所建立的順序執行。


有時,您可能預計 Tableau 會按一個順序執行篩選器,但操作的順序決定的篩選器按不同的順序執行,則結果可能會出人意料。如果發生這種情況,您有時可以更改操作在管道中執行的順序。


本主題提供了兩個用於更新視圖來糾正解決操作順序所產生問題的方案:將維度篩選器轉換為上下文篩選器,以及將表計算轉換為 FIXED 詳細級別表達式。


Tableau 的操作順序包括下麵闡述的所有元素。篩選器顯示為藍色;其他操作(大多數為計算)顯示為黑色。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


示例 1:將維度篩選器轉換為上下文篩選器


本示例以及以下示例使用 Tableau Desktop 附帶的“Sample – Superstore”數據源。


在此示例中,視圖解決以下這個問題:按總銷售額計,紐約市位居前 10 名的客戶有哪些?


視圖包含兩個維度篩選器,一個是您在“篩選器”對話框的“常規”選項卡上創建的篩選器,另一個是在“前 N 個”選項卡上創建的篩選器。問題在於,這些篩選器是同時執行的,而您希望常規篩選器在“前 N 個”篩選器之前應用,以便“前 N 個”篩選器可對常規篩選器預先篩選的結果進行操作。此解決方案是將其中一個篩選器重新定義為上下文篩選器,以便建立清晰的優先級順序。


下麵是用於構建此視圖的步驟:


STEP 1:“Sales”(銷售額)拖到“列”


STEP 2:“City”(城市)“[Customer Name]”([客戶名稱]拖到“行”


STEP 3:再次從“數據”窗格中拖出“City”(城市),這次將其拖到“篩選器”。在“篩選器”對話框的“常規”選項卡上,將篩選器設置為僅顯示單一值:“New York City”(紐約市),通過單擊“無”然後選擇“New York City”(紐約市)可達到此目的。


這將創建一個常規維度篩選器。


STEP 4:單擊工具欄上的“降序排序”按鈕 (640?wx_fmt=png&wxfrom=5&wx_lazy=1)。視圖現在將如下所示:


640?wx_fmt=png&wxfrom=5&wx_lazy=1

注意列表中的前幾個名稱:Ashbrook、Fuller、Vernon 等。


STEP 5:現在將“[Customer Name]”([客戶名稱])“數據”窗格拖到“篩選器”,並創建一個“前 10 個”篩選器,以僅顯示按總銷售額計的前 10 名客戶。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


應用了第二個篩選器後,視圖看起來是正確的,但您會注意到顯示的名稱與之前不再相同:


640?wx_fmt=png&wxfrom=5&wx_lazy=1


之前位於第二位的 Peter Fuller 發生了什麼情況?目標是顯示紐約市的前 10 名客戶,但現在視圖實際顯示的是總體的前 10 名客戶。


問題在於“前 N 個”篩選器和常規維度篩選器是同時應用的 — 它們都是維度篩選器,並且按 Tableau 操作順序出現在同一位置:


640?wx_fmt=png&wxfrom=5&wx_lazy=1


解決方案是向上下文中添加(針對“City”(城市))的常規維度篩選器 — 也就是說,將其轉換為一個上下文篩選器,該篩選器將先於在工作表中創建的任何其他篩選器執行。


有關詳細信息,請參見使用上下文篩選器提高視圖性能(https://onlinehelp.tableau.com/current/pro/desktop/zh-cn/filtering_context.html)


STEP 6:“篩選器”功能區上右鍵單擊(在 Mac 上按住 Control 單擊)“City”(城市),並選擇“添加到上下文”。作為上下文篩選器,此篩選器現在優先於維度篩選器,因此視圖現在將按預期方式顯示:


640?wx_fmt=png&wxfrom=5&wx_lazy=1


示例 2:將表計算轉換為 FIXED 詳細級別表達式


在此示例中,視圖將解決以下這個問題:占總銷售額的百分比將如何按產品子類列出?


視圖包含一個維度篩選器和一個表計算。Tableau 會在執行表計算之前應用維度篩選器。若要反轉這些操作的順序,請使用 FIXED 詳細級別表達式來取代表計算。


下麵是用於構建此視圖的步驟:


STEP 1:在新工作表中,將“Sales”(銷售額)拖到“列”


STEP 2:“Sub-Category”(子類)拖到“行”。


STEP 3:“列上右鍵單擊“SUM(Sales)”並選擇快速表計算 –“總額百分比”


STEP 4:單擊工具欄上的“降序排序”按鈕 (640?wx_fmt=png&wxfrom=5&wx_lazy=1),按從最多到最少的順序對類別進行排序。


STEP 5: 單擊工具欄上的“顯示標記標簽”按鈕 (640?wx_fmt=png&wxfrom=5&wx_lazy=1),以在視圖中顯示度量值。


視圖現在將如下所示:


640?wx_fmt=png&wxfrom=5&wx_lazy=1

注意前幾項的百分比:14.37%、14.30% 等。


STEP 6: “行”上右鍵單擊“Sub-Category”(子類),並選擇“顯示篩選器”


STEP 7:清除篩選器中“Chairs”(椅子)的複選標記。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


視圖中的百分比現在有所不同 — 現在最高的百分比超過了16%。在某些情況下,這可能就是您需要的結果(也就是說,在使用快速篩選器時對百分比進行了重新計算)。但在其他情況下,您可能希望百分比即使在您篩選進或篩選出某些項目時也保持穩定。這是我們在本例中所需要的。


在操作順序中,維度篩選器是在表計算之前應用的。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


若要讓 Tableau 在運用快速篩選器之前計算百分比,您可以創建一個 FIXED 詳細級別表達式,然後使用該表達式來取代表計算。


FIXED 詳細級別表達式使用指定的維度計算值,而不引用視圖中的維度。在本例中,您將使用它來建立各個子類的百分比 — 不會受常規維度篩選器影響的百分比。為何會這樣?原因是FIXED 詳細級別表達式是在應用維度篩選器之前計算的。


STEP 8:FIXED 詳細級別表達式必須將(特定度量值的)“Sales”(銷售額)的和除以視圖的“Sales”(銷售額)的總和。由於分子是聚合的,因此分母也必須為聚合,所以您編寫的表達式為:


SUM([Sales])/SUM({FIXED : SUM([Sales])})


STEP 9: 將該表達式另存為 FixedSumOfSales,然後將其從“數據”窗格拖到“列”,放在使用表計算的現有“SUM(Sales)”字段的右側(將兩者都保留在視圖中以便於比較)。您現在的視圖為如下所示:


640?wx_fmt=png&wxfrom=5&wx_lazy=1


不管您使用快速篩選器選擇或者不選擇哪些字段,右側圖表中的百分比現在都保持一致。現在隻需設置“FixedSumOfSales”值的格式,以使其顯示為百分比。


STEP 10:“列”中右鍵單擊“FixedSumOfSales”,並選擇“設置格式”。在“設置格式”窗格中,選擇“數字”,然後選擇“百分比”


640?wx_fmt=png&wxfrom=5&wx_lazy=1


這樣就得到了最終視圖:


640?wx_fmt=png&wxfrom=5&wx_lazy=1


當您在“Sub-Category”(子類)快速篩選器中選擇或清除項目時,左側條形圖中的百分比將發生變化,而右側條形圖中的百分比則不會。

使用Tableau案例


生成條形圖


使用條形圖可在各類別之間比較數據。創建條形圖時會將維度放在“行”功能區上,並將度量放在“列”功能區上,反之亦然。


條形圖使用條標記類型。當數據視圖與如下所示的兩種字段排列方式之一匹配時,Tableau 會選擇此標記類型。您可以向這些功能區中添加其他字段。


有關條形標記類型的詳細信息,請參見條形標記。


注意:在過程結束時,您可以執行一個額外步驟,在條形的頂部顯示合計。

 

640?wx_fmt=png&wxfrom=5&wx_lazy=1


若要創建顯示四年間的總銷售額的條形圖,請按照下列步驟操作:


STEP 1: 連接到“Sample - Superstore”數據源。


STEP 2:“Order Date”(訂單日期)維度拖到“列”功能區。


數據按年份聚合,並將顯示列標題。


STEP 3: “Sales”度量拖到“行”功能區。


該度量將聚合為一個總和並將創建一個軸,列標題將移到視圖的底部。


由於您添加了日期維度,因此 Tableau 會使用“線”作為標記類型。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


STEP 4: “標記”卡上,從視圖下拉列表中選擇“條形”


640?wx_fmt=png&wxfrom=5&wx_lazy=1


視圖會更改為條形圖。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


標記(在本例中為條)是垂直的,因為軸是垂直的。每個標記的長度表示那一年的銷售總額。您在此處看到的數字可能與實際數字不匹配 — 示例數據會隨時發生變化。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


STEP 5: “Ship Mode”(裝運模式)維度拖到“標記”卡的“顏色”上。


視圖顯示了不同的裝運模式如何影響一段時間內的總銷售額,且每年的比率似乎都一致。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


STEP 6:“Region”(區域)維度拖到“行”功能區,並將其放到“Sales”(銷售額)的左側,以便為地區銷售額生成多個軸。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


STEP 7: 若要隻查看西部區域的數據,您可以篩選掉其他區域。為此,請再次拖動“Region”(區域)維度,這次是從“數據”窗格拖到“篩選器”功能區。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


STEP 8: 在“篩選器 [Region]”對話框中,清除“Central”(中部)、“East”(東部)“South”(南部)複選框,然後單擊“確定”


640?wx_fmt=png&wxfrom=5&wx_lazy=1


此視圖使您能深入了解您的數據,例如西部的裝運模式在四年期間內發生了怎樣的變化。


額外步驟:為堆疊條添加合計


將合計添加到圖表中條形的頂部的操作,有時就像通過在工具欄中單擊“顯示標記標簽”圖標一樣簡單。但是,當按顏色或大小分解條形時,則將標記每個單獨條形段而不是標記條形的合計。隻需幾步,您就可以向每個條形的頂部添加合計標簽,即使這些條形像您剛剛創建的視圖中一樣已經細分。從技術上來說,在以下過程中您將添加一條參考線,但需通過以特定方式配置該“參考線”,最終您將得到所需的標簽。


STEP 1: “分析”窗格中,將“參考線”拖到視圖中,並將其放在“單元格”上。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


STEP 2:在“編輯參考線、參考區間或參考箱”對話框中,將“SUM(Sales)”的聚合設置為“總和”,將“標簽”設置為“值,並將“格式設置”下的“線”設置為“無”


640?wx_fmt=png&wxfrom=5&wx_lazy=1


然後單擊“確定”關閉“編輯參考線、參考區間或參考箱”對話框。


視圖中每個條形的頂部現在便有貨幣總計:


640?wx_fmt=png&wxfrom=5&wx_lazy=1


您可能需要調整視圖以使其正常顯示。如果條形太窄,數字將被截斷;若要修複這一點,請在鍵盤上按 Ctrl + 向右鍵以使條形更寬。或者,如果您想要使合計在條形上居中顯示 — 默認情況下,合計以靠左對齊方式顯示,請執行以下操作:


STEP 1:右鍵單擊條形圖上的任意合計並選擇“設置格式”


STEP 2:在“設置格式”窗口的“參考線標簽”區域中,打開“對齊”控件“水平”對齊,並選擇“居中”選項。

 

640?wx_fmt=png&wxfrom=5&wx_lazy=1


生成熱圖


使用熱圖用顏色比較分類數據。


要在 Tableau 中創建熱圖,可將一個或多個維度分別放在“列”“行”功能區上。然後選擇“方形”作為標記類型並將相關度量放在“顏色”功能區上。


可通過設置表單元格的大小和形狀來增強這種基本熱圖。


若要創建熱圖了解利潤如何隨地區、產品子類和客戶細分市場變化,請按以下步驟進行操作:


STEP 1:連接到“Sample - Superstore”數據源。


STEP 2:“Segment”(細分市場)維度拖到“列”功能區。


Tableau 將使用從維度成員名稱派生的標簽創建標題。


STEP 3:“Region”(區域)和“Sub-Category”(子類)維度拖到“行”功能區,同時將“Sub-Category”(子類)放在“Region”(區域)的右側。


現在,您具有分類數據的嵌套表(即“Sub-Category”(子類)維度嵌套在“Region”(區域)維度內)。


STEP 4: “Profit”(利潤)度量拖到“標記”卡的“顏色”上。Tableau 將這兩個度量聚合為總和。顏色圖例反映出連續數據範圍。


STEP 5:優化視圖格式:


  • “標記”卡上,選擇“方形”作為標記類型。

  • 通過按 Ctrl + 右箭頭(在 Mac 上,此組合為 z")將列調寬;按下 Ctrl(或 z)並繼續按右箭頭,直到完全顯示段的標題為止。

  • 通過按 Ctrl + Shift + B(在 Mac 上按:ñzB)來增加標記大小;按下 Ctrl + Shift (ñz) 並繼續按 B,直到方塊足夠大為止。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


在此視圖中,您隻能看到中部地區的數據。向下滾動以查看其他區域的數據。


在中部區域,複印機顯示為利潤最高的子類,而裝訂機和電器則是利潤最低的。


STEP 6:單擊“標記”卡上的“顏色”以顯示配置選項。在“邊框”下拉列表中為單元格邊框選擇中灰色,如下圖所示:


640?wx_fmt=png&wxfrom=5&wx_lazy=1


現在更容易看到視圖中的各個單元格:


640?wx_fmt=png&wxfrom=5&wx_lazy=1


最後更新:2017-10-10 11:33:23

  上一篇:go  無線安全技術:移動醫療技術及應用概述
  下一篇:go  數據蔣堂 | 非等值分組