我們在實作中學會如何建立工作表與儀表板,並在儀表板中讓多個工作表可以連動,使資料呈現方式多樣化。現在,讓我們停下腳步,回過頭來學習如何將匯入的多個資料表關聯起來,這是資料視覺化流程中最一開始的工作。在 Tableau Desktop 中關連的方式分為 Relationships 與 Joins 兩種,這裡會分享這兩種關聯的差異與建立方式。
Relationship 為表與表之間的關係,當我們將其中一張表拿來做視覺化,另外張表會根據這裡設定的 Relationship 來提供相對應數據。設定 Relationship 時,我們只需提供關係欄位 (可以多個欄位),Tableau Desktop 會感知關聯類型,不需要我們親自指定。
官方建議使用 Joins 之前,先嘗試使用 Relationships 來建立關聯。
我們同樣以 Sample - Superstore
為資料來源,開啟一個全新的 Tableau Desktop 工作簿並回到 Data Source 頁面,將 Logical Layer
中的三個資料表 (Orders、People、Returns) 全部移除,移除的方法很簡單,點擊資料表右鍵並選擇 Remove 即可移除
接下來我們要建立 Relationships,只需將資料表依照 Orders、People、Returns 順序拖曳到 Logical Layer
中,Tableau Desktop 會自動偵測表中的欄位,幫我們對應並以 Relationship 的方式關聯,當然我們也可以自己設定要用來關聯的欄位。完成之後,讀者可能會發現其實就跟剛開啟 Sample - Superstore
的 Logical Layer
長的一樣!沒錯,這裡只是利用這個範例來說明 Relationships
是如何建立起來的
Joins 是我們熟知的 Inner Join
、Left Join
、Right Join
與 Full Outer Join
的通稱,需要手動指定 Join 形式與 Join 欄位,Joins 會將所有參與 Join 關聯的資料表合併為一張資料表。
首先讓 Logical Layer
只剩下 Orders 資料表,並左鍵雙擊 Orders 資料表,Orders 資料表會被展開並佔滿 Logical Layer
,再拖曳 People 與 Returns 資料表至 Logical Layer
中的 Orders 資料表內,預設會以 Inner Join
方式來關聯,但我們可以點擊 Venn Diagram 來編輯關聯方式與關聯欄位
最後,觀察 Relationships 與 Joins 在 Logical Layer
中的表示方法,Joins 的資料表在名稱前會有 Venn Diagram,且 3 張資料表 Join 完之後就會視為是一張表;而以 Relationships 對 3 張資料表做關聯,還是會分為獨立的 3 張資料表,只是這 3 張資料表彼此之間有了連接線,等同它們之間的 Relationship
若 Relationships 與 Joins 都可以滿足關聯要求,會優先選擇 Relationships 來使用。還有一點要提醒的是,一個專案的資料表關聯並非只能 Relationships 與 Joins 擇一使用,Tableau Desktop 是允許這兩種關聯混用的,整體來說彈性非常高。