什麼是可視化
我們知道,計算的目的是從數據中獲得洞察力。可視化技術是一種將數據轉換成幾何圖形表示的技術,它能夠直觀地展現數據,提供自然的人機交互的能力。
簡而言之,可視化是一種數據的可視表現形式以及交互技術的總稱。它通過圖形化的方式把數據表現出來,方便用戶進行觀察和理解,並幫助用戶對數據進行探索(Exploration)、發現(Discover)數據裏隱藏的模式,獲得對大量數據的理解和洞察力(Insight)
可視化的強大威力
常話說:一幅圖勝過千言萬語
,即某些事物用文字來表達相當煩瑣,很不真觀,但是用圖形來表現,則非常容易把握和理解。
以地圖導航爲例,從杭州的武林廣場到西湖音樂噴泉之間的路,文字和地理信息分別如下圖:
在地圖上我們可以一目瞭然地看到線路的全貌。通過對關鍵的換乘點進行點擊,就可以獲得時一步的線程信息。這個實例生成地展示了可視化的直觀性。
在大數據時代,數據來源多樣,數據的規模巨大,可視化技術可以幫助我們對數據進行觀察,理解、探索和發現。
可視化的一般過程
可視化的一般過程以下圖1-3所示:
科學可視化與信息可視化
目前,可視化領域包括三個主要分支,分別是科學可視化(Scientific Visualization)
、信息可視化(Information Visualization)
以及可視分析(Visual Analytics)
。
可視化領域的頂級學術會議是IEEE VIS
,它包含三個分會,正好分別對應數據可視化的三個分支。
在數據可視化領域,科學可視化是其中最成熟的一個研究分支,它主要面向自然科學實驗、探測活動(如天文觀測)、計算機模擬所產生的數據進行建模、操作和處理。科學可視化是針對特定領域的,比如:天文觀測、地震研究、醫學研究、核物理研究、石油勘探等,其數據類型較爲單一,數據中一般帶有物理和幾何結構數據,可視化的任務一般是固定的。
科學可視化和信息可視化在目標任務、應用領域、數據類型、主要方法、面向的用戶等方面的主要區別如下表:
對比項 | 科學可視化 | 信息可視化 |
---|---|---|
目標任務 | 研究科學問題,深入理解自然界中的現象 | 探索、發現信息之間的關係 ,發現隱藏的模式 |
應用領域 | 氣象、高能物理、天文學、生物學、醫學、地質學.... | 傳感器網絡、電子商務、金融、社交網絡、新聞、博客、反恐.... |
數據來源和類型 | 1. 來自科學實驗、觀測、仿真; 2. 結構化數據,具有物理、幾何特性 | 1. 來自各個領域; 2. 結構化數據和非結構化數據,一般不具有物理、幾何屬性 |
主要方法與要求 | 1. 預處理、映射、渲染、交互; 2. 準確反映數據中的物理幾何關係 | 數據挖掘與機器學習、映射、渲染、交互以及可視分析;把抽象複雜的信息及其關係映射爲有效的可視化表示,尋找合適的可視化形式; |
面向的用戶 | 面向科學家 | 面向非技術人員、普通用戶、管理人員 |
數據可視化的原則
可視化的目的是把複雜數據有效地展出來,首要的原則是準確(Precision)
和清晰(Clarity)
。
準確是指可視化結果反映的是數據的本來面目或者本質(Substance);
清晰是指可視化結果所表達的含義要明確。
- 我們希望在更小的空間裏(Less Space),用最少的圖形(Less Ink),在最短的時間裏(Less Time),傳達給用戶最多的信息(More Ideas)。對可視化效果進行合理簡化,突出重點。
- 可視化的結果,需要闡明事物之間的相互關係,以及事物的變化趨勢,對於類似的事物要方便用戶進行比較。需要結合時間、空間因素進行設計,包括使用箭頭、創造流動感等。
- 使用用戶熟悉的事物,對需要比較的數據進行比較。
- 構建實物場景,生成展現數據。
- 在可視化設計過程中,要考慮把交互方式和動畫效果加進去。
可視化的實例
-
散點圖與直方圖
散點圖(Scatter Plot
)是對點數據(Point Data,即向量)的集中趨勢、分佈形狀、離散趨勢進行把握的基本的可視化形式。
集中趨勢
是指數據向中心點靠攏的趨勢。
分佈形態
包括數據的分佈是對稱的還是非對稱的,平緩的還是比較陡峭的等。
離散趨勢
指的是數據離開中心點的趨勢。
直言圖
,也稱爲頻率直方圖(Frequency Histogram),它是統計學中用於表示頻率分佈的圖形。在直角座標系中,橫座標表示隨機變量的取值,橫軸一般劃分成一系列的小區間,每個區間對應一個分組,作爲小矩形的底邊。縱座標表示頻率,每個分組的小矩形的高度表示隨機變量取值落入該區間的頻率。一系列的小矩形構成頻率直方圖。
-
線圖
線圖是通過畫直線或者樣條曲線,把若干數據點連接起來。線圖分單線圖(Line Graph)和多線圖(Multiple Line Graph)。
-
柱狀圖與餅圖
柱狀圖和餅圖一般用來顯示一個數據系列裏各個數值之間的相對大小關係。柱狀圖的各個柱子的高度是比例關係以及餅圖的各個扇面的大小的比例關係,反映了數據系列中各個數值之間的大小關係。
-
解剖圖、切片、等值面
人體和動物的解剖圖可以是手繪的,也可以是利用3維建模技術重建的。
CT(Computed Tomography)設備和MRI(Magnetic Resonance Imaging)設備可以對人體進行斷層掃描,獲得高分辨率的人體切片圖像。
表現層次關係:樹、圓錐樹、Tree Map、信息立方體
- 樹(Tree)- 樹型結構是可視化中應用最廣泛的一種圖結構,它一般用來表現某種層級關係,如某個組織的各個部分、某個家庭的族譜等。
-
圓錐樹(Cone Tree)- 圓錐樹用於對層次結構進行可視化展現。在圓錐樹中層次結構通過3維方式進行展現,以利用最大化使用屏幕空間,以及展現整個層次結構。每個節點表示爲圓錐的頂點,它的子節點在該圓錐的底面周圍繪製出來。如下圖:
- Tree Map - 最初是由馬里蘭大學的Ben Shneiderman教授於20世紀90年代提出的,最初的目的是找到一種有效瞭解磁盤空間使用情況的方法。Ben教授首先想到的是用樹狀結構來表示,但是這樣圖形佔用太大的空間。接着他利用面積來表示文件大小,但是用矩形、三角形還是圓形都有一定的問題。最後,他想到了將屏幕交替切分爲水平和垂直方向的矩形,用遞歸來實現層級關係。
-
信息立方體(Info Cube)
信息立方體是一種多維的數據結構,用於從不同維度對數據進行彙總和觀察。
-
地圖(Map)和地球(Earth)
在地圖上進行可視化,可以展示事物的發展過程所涉及的不同地理位置。
-
堆疊的河流(Stacked River)
Jeff Clark創建了Twitter Stream Graph可視化效果。他通過堆疊的河流,顯示Twitter數據流裏流行的關鍵字(Top Trending Keywords)隨時間變化的情況。