致敬Hans Rosling - 經典數據可視化作品是如何煉成的

剛剛開通專欄,第一篇文章選擇致敬數據可視化領域公認的泰斗Prof. Hans Rosling。Rosling在2017年2月7號去世。留給世界他創立的Gapminder gapminder.org/ 和著名的Ted Talk The best stats youve ever seen 。

在Gapminder里使用最多的一個數據可視化作品 Gapminder Tools 利用散點圖的方式描述了各國健康水平(預期壽命)和經濟發展(人均GDP)的正相關性,並利用動畫演示了過去半個世紀的這兩個指標的變化(見題圖或鏈接)。

這裡我們利用Tableau來重現這樣一個數據可視化作品,以及探討一下同樣的數據信息,同樣的散點圖,經典為什麼能成為經典。本文最早是作者為國內一項數據分析競賽輔導準備的一個講解範例,現在歸納成文。英文資料主要來源於FT.com的data doctor專欄。

在導入Tableau之前我們需要準備數據源。在Gapminder上已經有現成的Excel報表,是放在google driver上面,這裡另外準備了兩個鏈接,給牆內和牆外的朋友

  • Dropbox
  • 百度雲盤 密碼: g71i

zip文件中含有三個數據表

  1. 各個國家年度人均壽命 Life Expectancy
  2. 各個國家年度人均收入 GDP/Captial
  3. 各個國家的年度人口統計 Population

接下來我們就可以將數據導入Tableau開始製作可視化報表了。

數據準備第一步,使用Tableau Desktop分別連接到三個excel表格的data表,建立三個獨立的數據源

注意:勾選 數據解釋器清理 並使用 數據透視表 功能來重構表格

如何使用數據解釋器 如何使用數據透視表

數據準備第二步,數據源連接工作完成後,統一欄位名稱和數據類型。在Tableau中得到兩個3列多行的數據源,將第一個維度重命名為[Country],將【數據透視表欄位名稱】重命名為[Year],將三個數據源中的【數據透視表欄位值】分別重命名為[Population], [Life Expectancy] 和 [GDP/Captial]。

數據準備第三步,如果依據以上命名規則,在 數據 > 編輯關係 選項中任意兩個數據源的關係已經自動確認。如有需要,可點擊自定義進一步編輯。

以上完成數據準備之後,我們將分步重建GapMinder中的可視化

第一步 構建散點圖

  1. 拖動 [GDP/Capital] 至列,更換數據源 再拖動 [Life Expectancy] 至行
  2. 回到主數據源拖動 [Country] 至詳細信息
  3. 拖動 [Year] 至篩選器選擇2015

點評:作為基本圖例,散點圖在Tableau中很容易實現,但是從可視化的角度來看,第一步的視圖的主要問題在於80%的數據集中於左邊20%的空間中,右下大片的視圖空間是空白的,造成了空間上的浪費和不易解讀。解決這一點,可以變換數軸顯示方式。

第二步 變換橫軸為對數坐標軸

  1. 右擊橫軸,選擇編輯軸,點選對數 (同樣也可以控制縱軸從20開始而不是從零開始)

對數或者指數坐標變換是常用的線性坐標軸替換方式。

點評:接下來的問題在於這個視圖不能體現人口眾多國家(如中國,印度)在此問題上的權重。解決這一點,可以引入大小特徵。

第三步 引入人口數據控制大小

  1. 切換至人口信息數據源 確保數據連接已經啟用
  2. 拖動population至大小 (可點擊大小調整至合適尺寸)

點評:這個視圖的問題在於不能體現不同類型(如高壽命高收入 VS 低壽命低收入)地域特徵。解決這一點,可以引入顏色特徵。

第四步引入國家分組信息控制顏色

  1. 在主數據源中右擊點選Country 創建組 可已經自定義的分組方法,把100餘個國家分成若干組。文末的Tableau Public樣本中已創建了這樣的分組供下載參考
  2. 拖動Country(組)至顏色

點評:這個視圖不能體現過去幾十年的動態變化,只能手動調節右邊的篩選器。解決這一點,可以利用頁面功能。

第五步引入分頁實現動態展示

  1. 把篩選器中的Year拖至上方的頁面,右邊會自動出現頁面控制器

通過這五個細節上的調整,整個視圖變得清晰生動,而且交互性大大增強。加上Roslling幽默的講解,這大概就是點擊量百萬的Ted Talk The best stats youve ever seen 秘密所在吧。

後記:

知乎暫時還不支持Tableau視圖的嵌入,以上的Tableau工作簿可以在我的Tableau Public頁面免費下載 此處為 Tableau Public上本文提到的Workbook的鏈接


推薦閱讀:

TAG:TABLEAU | 數據可視化 | DataVisualization |