天天看點

高維資料如何分析?教你一招:平行坐标系~~

高維資料如何分析?教你一招:平行坐标系~~

編 輯:NK冬至

彭友們好,我是老彭。又是一年清明小長假,正式踏青的好時候。在外出遊玩的時候得注意防疫啊。

之前有資料分析師彭友問我一個很刁鑽的問題,如果我們分析的資料次元太多了,該用啥圖形?

用三維柱形圖?太難看。用N個圖平鋪?太LOW。今天給大家分享一個進階可視化方式:平行坐标系(Parallel Coordinates)。

高維資料如何分析?教你一招:平行坐标系~~

定義及适用場景

首先,聊聊平行坐标系的一些整體概述内容。

(1)基礎定義

平行坐标系,是一種含有多個垂直平行坐标軸的統計圖表。每個垂直坐标軸表示一個字段(次元),每個字段(次元)又用刻度來标明範圍,如下示例圖。

高維資料如何分析?教你一招:平行坐标系~~

這樣,一個多元的資料可以很容易地在每一條軸上找到“落點”,進而連接配接起來,形成一條折線。随着資料增多,折線堆疊,分析者則有可能從中發現特性和規律,比如發現資料之間的聚類關系。

(2)曆史發展

大約在一百多年前,就已經有人運用平行坐标,來對複雜事件做可視化。

高維資料如何分析?教你一招:平行坐标系~~

在20世紀70年代,作為一種統計圖表,平行坐标系被特拉維夫大學的Alfred Inselberg系統發展起來。

(3)适用場景

平行坐标圖最适用于多元資料(尤其是次元大于3個時,3個以内的次元可以用散點圖)的分析和比較。例如,多個學科、多個考核名額、多個關鍵參數等。

當然,前提是用來比較的對象都具有這些次元。比如,一個經典的案例(下文中的場景案例2),是用平行坐标系來比較世界各國汽車在性能上的差異。對于汽車而言,這些次元是共有的(包括耗油量、汽缸數、加速度等等),因而适合比較。

高維資料如何分析?教你一招:平行坐标系~~

圖表詳細邏輯

我們以一個例子,了解一下圖表的資料邏輯。

例如,某班主任想分析班級學生的優劣勢科目,以及每個學生的偏科情況。下面是具體資料表:

高維資料如何分析?教你一招:平行坐标系~~

做完平行坐标圖後:

高維資料如何分析?教你一招:平行坐标系~~

平行坐标系的每個坐标軸,很可能有不同的資料範圍,這一點很容易造成讀者誤解。作圖時,最好顯著标明每一根軸上的最小值、最大值。

使用平行坐标系時,如何确定軸的順序,是可以人為決定的。一般來說,順序會影響閱讀的感覺和判斷。兩根坐标軸隔得越近,人們對二者的對比就感覺地越強烈。

是以,要得出最合适、美觀的排序方式,往往需要經過多次的試驗和比較。反過來講,嘗試不同的排布方式,也可能有助于得出更多的結論。

高維資料如何分析?教你一招:平行坐标系~~

與其他圖表的關系

下面我們看一看平行坐标系和其他比較相似的圖表的對比。

(1)與折線圖

平行坐标系與折線圖完全不同。

高維資料如何分析?教你一招:平行坐标系~~

折線圖的資料是通過時間組織起來的(每個資料點之間包含着時間前後的關系),但平行坐标軸并沒有時間序列,它的坐标軸是可以人為設定順序的,點與點之間也沒有因果關系,折線并不代表趨勢。各個坐标軸之間也沒有因果關系。

(2)與桑吉圖

高維資料如何分析?教你一招:平行坐标系~~

倆圖看着挺像的,但是桑吉圖有個重要的邏輯是:每個豎軸前後是有順序關系的,而平行坐标系沒有先後順序。

是以,桑吉圖更多作為使用者路徑先後順序的分析,以及層次拆分的分析。

(3)與雷達圖

其實,平行坐标系和雷達圖是最相近的。

高維資料如何分析?教你一招:平行坐标系~~

雷達圖表示的是多個次元上的分布情況,平行坐标系也是。是以可以将平行坐标系了解成雷達圖的展開。大多數情況下,這兩者确實可以互換。

高維資料如何分析?教你一招:平行坐标系~~

劣勢以及互動提升

平行坐标系的弊端在于折線太多、看上去十分龐雜,過于淩亂。但平行坐标系在處理多元資料上的優勢,仍然是其他統計圖難以比拟的。尤其是,當平行坐标系配合互動功能使用時,其價值就會立刻顯現。

最好的解決方法是加入互動——“Brushing”,使用者可以通過“刷”的方法,在坐标軸上“刷”出他們想要探索的部分。

基本操作是,使用者可以在每一根垂直坐标軸上“刷”出自己想要的範圍,處于範圍内的折線高亮,其餘的呈灰階。這樣一來,我們既可以看到所有折線堆疊出來的整體景觀,又可以自由定制想看的範圍,可以說是“見樹又見林”。

當然,互動的設計可以不限于此,比如下圖将平行坐标系與表格結合起來,對于小型的資料集來說,會更加一目了然。

高維資料如何分析?教你一招:平行坐标系~~

此外,如下圖所示,也可以通過技術将繁雜的折線“捆”在一起(Bundling Technique),這樣,人們的視覺就更能集中于起始的刻度。

高維資料如何分析?教你一招:平行坐标系~~
高維資料如何分析?教你一招:平行坐标系~~

​典型案例

最後,我們看兩個典型的利用平行坐标系的案例。

(1)曆年世界500強排名

下圖總結了1955-2010年來的世界五百強公司排名、收入和利潤情況。

高維資料如何分析?教你一招:平行坐标系~~

每一根豎軸代表一年的排名,通過将每家公司曆年的排名描點、連線,就形成了一條折線。滑鼠滑動時,相應的公司會高亮顯示,友善讀者探索它的興衰變化。

例如上圖中,我們看到可口可樂公司的排名,盡管有所波動,但始終位于高位,并且穩中有升,在1994年達到巅峰,之後有所回落。

原文連結:https://fathom.info/fortune500/

(2)汽車參數對比

在平行坐标系的衆多簡介中,幾乎都會涉及到這個汽車的案例——資料包括上世紀70、80年代的32款汽車,以及這些汽車的氣缸數(cylinders)、引擎大小(displacement)、每加侖汽油行駛的裡程(MPG)、功率(horsepower)、重量(weight)等等。

高維資料如何分析?教你一招:平行坐标系~~

從圖中(Evans, no date),我們可以清晰地看出一些關系,例如從裡程與氣缸數呈負相關、氣缸數與功率呈正相關。再比如,随着時間發展,汽車越來越輕了。通過“Brushing”功能,還有更多新奇發現。​​http://www.columbia.edu/~cme2126/datavisuals/bigdata_parallelcoordinates.html​​

關于平行坐标系,我們就先介紹這些吧。如果大家對可視化圖表感興趣,後面我作為系列展開多多分享。我覺得這種基礎的資料産品以及資料分析的知識點,還是有必要紮實掌握的。