如今學習應用資料視覺化的渠道有很多,你可以跟蹤一些專家部落格,但更重要的一點是實踐/實操,你必須對目前可用的資料視覺化工具有個大致瞭解。
下面列舉的二十個資料視覺化工具,無論你是準備製作簡單的圖表還是複雜的圖譜或者資訊圖,這些工具都能滿足你的需要。更加美妙的是,這些工具大多免費。
入門級工具
Excel
Excel的圖形化功能並不強大,但Excel卻是分析資料的理想工具,上圖是Excel生成的熱力地圖。
作為一個入門級工具,Excel是快速分析資料的理想工具,也能建立供內部使用的資料圖,但是Excel在顏色、線條和樣式上可選擇的範圍有限,這也意味著用Excel很難製作出能符合專業出版物和網站需要的資料圖。
不過作為一個高效的內部溝通工具,Excel應當是你百寶箱中必備的工具之一。
CSV/JSON
CSV(逗號分隔值)和JSON(JavaScript物件註釋)雖然並不是真正的視覺化工具,但卻是常見的資料格式。
你必須理解他們的結構,並懂得如何從這些檔案中匯入或者匯出資料。
以下將要介紹的所有資料視覺化工具都支援CSV、JSON中至少一種格式。
Google Chart API
Google Chart API工具集中取消了靜態圖片功能,目前只提供動態圖表工具。
能夠在所有支援SVG\Canvas和VML的瀏覽器中使用,但是Google Chart的一個大問題是:圖表在客戶端生成,這意味著那些不支援JavaScript的裝置將無法使用,此外也無法離線使用或者將結果另存其他格式,之前的靜態圖片就不存在這個問題。
儘管存在上述問題,不可否認的是Google Chart API的功能異常豐富,如果沒有特別的定製化需要,或者對Google視覺風格的牴觸,那麼你大可以從Google Chart開始。
Flot
Flot是一個優秀的線框圖表庫,支援所有支援canvas的瀏覽器(目前主流的瀏覽器如火狐、IE、Chrome等都支援)。
Raphael
Raphael是建立圖表和圖形的JavaScript庫,與其他庫最大的不同是輸出格式僅限SVG和VML。
SVG是向量格式,在任何解析度下的顯示效果都很好。
D3
D3(Data Driven Documents)是支援SVG渲染的另一種JavaScript庫。
D3能夠提供大量線性圖和條形圖之外的複雜圖表樣式,例如Voronoi圖、樹形圖、圓形叢集和單詞雲等。
雖然D3能夠提供非常花哨的互動圖表,但你在選擇資料視覺化工具時,需要牢記的一點是:知道在何時保持簡潔。
Visual.ly
如果你需要製作資訊圖而不僅僅是資料視覺化,目前也有大把的工具可用。
Visual.ly就是最流行的一個選擇。雖然Visual.ly的主要定位是:“資訊圖設計師的線上集市”,但是也提供了大量資訊圖模板。雖然功能還有很多限制,但是Visual.ly絕對是個能激發你靈感的地方。
互動圖形使用者介面(GUI)控制
如果資料視覺化的互動性強大到可以作為GUI介面會怎樣?
隨著線上資料視覺化的發展,按鈕、下拉列表和滑塊都在進化成更加複雜的介面元素,例如能夠調整資料範圍的互動圖形元素,推拉這些圖形元素時輸入引數和輸出結果資料會同步改變。
在這種情況下,圖形控制和內容已經合為一體。以下這些工具能夠幫你實現這些功能:
Crossfilter
當我們為方便客戶瀏覽資料開發出更加複雜的工具時,我們已經能夠創建出既是圖表,又是互動圖形使用者介面的小程式。JavaScript庫Crossfilter就是這樣的工具。
Crossfilter應用:當你調整一個圖表中的輸入範圍時,其他關聯圖表的資料也會隨之改變。
Tangle
JavaScript庫Tangle進一步模糊了內容與控制之間的界限。
在上圖的應用例項中,Tangle生成了一個負載的互動方程,讀者可以調整輸入值獲得相應資料。
地圖工具
地圖生成是web上最困難的任務之一。Google Maps的出現完全顛覆了過去人們對線上地圖功能的認識。而Google釋出的Maps API則讓所有的開發者都能在自己的網站中植入地圖功能。
近年來,線上地圖的市場成熟了很多,如果你需要在資料視覺化專案中植入定製化的地圖方案,目前市場上已經有很多選擇,但是知道在何時選擇何種地圖方案則成了一個很關鍵的業務決策。
地圖方案看上去功能都很強大,但是切忌:“有了一把錘子,看什麼都像釘子”
Modest Maps
顧名思義,Modest Maps是一個很小的地相簿,只有10KB大小,是目前最小的可用地相簿。
這似乎意味著Modest Maps只提供一些基本的地圖功能,但是不要被這一點迷惑了。在一些擴充套件庫的配合下,例如Wax,Modest Maps立刻會變成一個強大的地圖工具。
Leaflet
CloudMade團隊為大家帶來了Leaflet,這是另外一個小型化的地圖框架,透過小型化和輕量化來滿足移動網頁的需要。
Leaflet和Modest Maps都是開源專案,有強大的社群支援,是在網站中整合地圖應用的理想選擇。
PolyMaps
Polymaps是另外一個地相簿,但主要面向資料視覺化使用者。
Polymaps在地圖風格化方面有獨到之處,類似CSS樣式表的選擇器,是不可錯過的好東西。
OpenLayers
OpenLayers可能是所有地相簿中可靠性最高的一個。
雖然文件註釋並不完善,且學習曲線非常陡峭,但是對於一些特定的任務來說,OpenLayers無可匹敵。例如能夠提供一些其他地相簿都沒有的特殊工具。
Kartograph
Kartograph的標記線是對地圖繪製的重新思考,我們都已經習慣了莫卡託投影,但是Kartograph為我們帶來了更多的選擇。
如果你不需要呼叫全球資料,而僅僅是生成某一區域的地圖,那麼Kartogaph將使你脫穎而出。
CartoDB
CartoDB是一個不可錯過的網站。你可以用CartoDB很輕易就把表格資料和地圖關聯起來,這方面CartoDB是最優秀的選擇。
例如,你可以輸入CSV通訊地址檔案,CartDB能將地址字串自動轉化成經度/維度資料並在地圖上標記出來。目前CartoDB支援免費生成五張地圖資料表,更多使用需要支付月費。
隨著高畫質移動裝置的普及,web開發的一個最新趨勢是將符號字型與字型整合(把符號變成字型),創建出漂亮的向量化圖示。
在這些新型字型中,例如FF Chartwell和Chartjunk是專門用來顯示圖表和圖形的。
他們與OpenType碰到的問題一樣,就是不能被所有的瀏覽器支援,但是不久的未來這些向量字型將是資料視覺化工作中需要考慮到的因素。
進階工具
如果你準備用資料視覺化做一些“嚴肅”的工作,那麼你可能不會對線上視覺化工具或者web小程式有太大興趣,你需要的是桌面應用和程式設計環境。
Processing
Processing是資料視覺化的招牌工具。你只需要編寫一些簡單的程式碼,然後編譯成Java。
目前還有一個Processing.js專案,可以讓網站在沒有Java Applets的情況下更容易地使用Processing。
由於埠支援Objective-C,你也可以在iOS上使用Processing。
雖然Processing是一個桌面應用,但也可以在幾乎所有平臺上執行,此外經過數年發展,Processing社群目前已經擁有大量例項和程式碼。
NodeBox
NodeBox是OS X上建立二維圖形和視覺化的應用程式。
你需要了解Python程式,NodeBox與Processing類似,但是沒有Processing的互動功能。
專家級工具
與Excel相對的是專業資料分析工具。如果你是一個專業的資料分析師,那麼你就必須對下面將要介紹的工具有所瞭解(如果不是精通的話)。
眾所周知,SPSS和SAS是資料分析行業的標準工具,但是這些工具的費用不菲,只有大型組織和學術機構才有機會使用。
下面我們介紹幾種免費的替代工具,這些開源工具的共同特徵是都有強大的社群支援。開源分析工具效能不輸老牌專業工具,外掛的支援甚至更好。
R
作為用來分析大資料集的統計元件包,R是一個非常複雜的工具,需要較長的學習實踐,學習曲線也是本文所介紹工具中最陡峭的。
但是R擁有強大的社群和元件庫,而且還在不斷成長。當你能駕馭R的時候,一切付出都是物有所值的。
Weka
當你成長成一名資料科學家的時候,你需要將個人能力從資料視覺化擴充套件到資料探勘領域。
Weka是一個能根據屬性分類和叢集大量資料的優秀工具,Weka不但是資料分析的強大工具,還能生成一些簡單的圖表。
Gephi
Gephi是進行社交圖譜資料視覺化分析的工具,不但能處理大規模資料集並生成漂亮的視覺化圖形,還能對資料進行清洗和分類。
Gephi是一種非常特殊的軟體,也非常複雜,先於他人掌握Gephi將使你一騎絕塵。
快挑選幾個喜歡的試試看吧,說不定用得上。
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
我是「數據分析那些事」。常年分享數據分析乾貨,不定期分享好用的職場技能工具。各位也可以關注我的Facebook,按讚我的臉書並私訊「10」,送你十週入門數據分析電子書唷!期待你與我互動起來~