[數據分析與可視化 34] ggplot2與Tableau的繪圖原理
數據可視化的本質是什麼?即將分析邏輯用圖形化的語言表達於平面之上。分析邏輯需操作的關鍵要素是框架結構、指標、維度及數值;平面上常用的圖形元素是面、線、點,及各種圖元類型。分析要素分主次,圖形表現有強弱,數據可視化就是一項將分析邏輯逐步翻譯成圖形語言的任務。
其中,框架結構是指整套數據可視化內容的一級目錄或一級論點,其在圖形語言中表現方式就是「面」,其中每一方面在圖形設計都最好採用整片的面積區分,甚至單獨分頁顯示。指標的確定對應的圖形語言是「線」,即在上述「面」的基礎之上,用線將其做進一步的分割。最後是對維度、數值這些「點」的確定,研究它在本應用場景下最關鍵的特徵,如趨勢、對標、構成等。這些一旦確定下來,剩餘的工作量就變成一道「選擇題」了。平面上常見圖元類型一般有哪些可用維度呢?x軸、y軸、高低、大小、顏色、形狀等,且各個維度在視覺表現力上有強弱之分。分析師需要做的,就是將之前排序過的業務維度,按其關鍵特徵,依次對號入座即可完成圖元設計。
讀完以上邏輯之後,你會發現數據可視化貌似可以天馬行空,但卻有其內在的邏輯約束。在一次加班快到凌晨時我突然想通了這個道理,滿心歡喜了很久。後來發現R 中ggplot2與Tableau軟體中的繪圖原理都是這個,它早被發現且被N多人用過,我心裡就淡然了,哈哈。
ggplot2 包是以統計學家Leland Wilkinson 的「圖形語法」為基礎,以一種數據可視化的形式開發的。Wickham把 ggplot2 和圖形語法看成是「不作為一系列機械操作的可視化思維方式(如從這裡到那裡畫一條線,在這裡畫一點,把長方形塗上顏色)而是以可視化的思維將數據映射到你能看到的事物上。」
在圖形語法背後的概念是相當抽象的。最大的想法是圖是由「幾何對象」(我們在圖表上看到的一個點或柱子的圖形元素)和「圖形屬性」(關於其中幾何形狀被放置的方向)組成的。這聽起來可能不是革命性的,但由Wickham實現的這個概念使得成千上萬的人可以更加容易地畫圖。問答網站Stack Overflow上已經有近9000個問題標記為ggplot2,甚至說 ggplot2 在R中讓作圖變得更「好玩」。用 ggplot2 畫的圖已經出現在了Nature,FiveThirtyEight和紐約時報上。——Hadley Wickham:一個改變了R的人
以上描述與tableau的繪圖原理也如出一轍,都遵循著類似的圖形語法,分析師也就是把業務內涵用圖形語法表達於使用人員。
文章鏈接:
Hadley Wickham:一個改變了R的人RStudio | 統計之都 (中國統計學門戶網站,免費統計學服務平台)封面鏈接:iTunes Festival: London 2010,蝦米音樂
推薦閱讀:
※Viz teardown | How Safe Are Ivy League Schools
※Viz teardown | Race to Alaska
※Tableau 儀錶板 | 按這幾項做了 你的儀錶板就不會差 1
※Tableau | IS AND IS NOT
※Tableau 設計 | 創建分組條形圖