2019年你不能錯過的數據可視化工具

  • 2019 年 10 月 4 日
  • 筆記

在數據科學領域,數據可視化無疑是當今的首要辭彙。無論想分析哪些數據,進行數據可視化似乎都是必要的步驟。但是很多人沒有特定的數據可視化概念,也不知道如何實現它。所以,今天將帶您了解數據可視化的定義,概念,實現過程和工具。

1. 什麼是數據可視化?

科學可視化,資訊可視化和可視化分析通常被視為可視化的三個主要分支。新的學科「數據可視化」是這三個分支的組合,是視覺研究領域的一個新起點。

廣義數據可視化涉及各種學科,如資訊技術,自然科學,統計分析,圖形,交互和地理資訊。

1.1科學可視化

科學可視化是科學領域的跨學科研究和應用領域,側重於三維現象的可視化,如建築學,氣象學,醫學或生物系統。其目的是以圖形方式說明科學數據,使科學家能夠從數據中理解,解釋和收集模式。

1.2資訊可視化

資訊可視化是對抽象數據的互動式視覺表示的研究,以增強人類的認知。抽象數據包括數字和非數字數據,如地理資訊和文本。直方圖,趨勢圖,流程圖和樹圖等圖形都屬於資訊可視化,這些圖形的設計將抽象概念轉換為視覺資訊。

1.3可視化分析

可視化分析是隨著科學可視化和資訊可視化的發展而發展的新領域,重點在於通過互動式可視化介面進行分析推理。

來自FineReport

2. 為什麼需要數據可視化?

人類通過視覺獲得的資訊量遠遠超過其他器官。數據可視化是利用人類自然技能來提高數據處理和組織效率。

可視化可以幫助我們處理更複雜的資訊並增強記憶體。

大多數人對統計數據知之甚少,基本統計方法(平均值,中位數,範圍等)與人類認知性質不符。其中一個最著名的例子是Anscombe的四重奏。根據統計方法很難看到法律,但是當數據可視化時,規則非常清楚。

3. 如何實現數據可視化?

從技術上講,對數據可視化最簡單的理解是從數據空間到圖形空間的映射。

經典的可視化實現過程是處理和過濾數據,將其轉換為可表達的可視化形式,然後將其呈現為用戶可見的視圖。

可視化技術堆棧

通常,專業數據可視化工程師需要掌握以下技術堆棧:

·基礎數學:三角函數,線性代數,幾何演算法

·圖形:Canvas,SVG,WebGL,計算圖形,圖論

·工程演算法:基本演算法,統計演算法,通用布局演算法

·數據分析:數據清理,統計,數據建模

·設計美學:設計原則,審美判斷,色彩,互動,認知

·視覺基礎:可視化編碼,可視化分析,圖形交互

·可視化解決方案:正確使用圖表,可視化常見業務場景

4. 通用數據可視化工具

一般來說,學術界使用R語言,ggplot2和Python。普通用戶最熟悉的工具是Excel。商業產品包括Tableau,FineReport,Power BI等。

1) D3

https://d3js.org/

D3.js是一個基於數據操作文檔的JavaScript庫。D3將強大的可視化組件與數據驅動的DOM操作方法相結合。

評價:D3具有強大的SVG操作能力。它可以輕鬆地將數據映射到SVG屬性,並集成了大量用於數據處理,布局演算法和計算圖形的工具和方法。它擁有強大的社區和豐富的演示。但是,它的API太低級了。學習和使用成本高時,可重用性不高。

2) HighCharts

https://www.highcharts.com/

HighCharts是一個用純JavaScript編寫的圖表庫,使用戶可以輕鬆方便地將互動式圖表添加到Web應用程式中。這是Web上使用最廣泛的圖表工具,商業用途需要購買商業許可證。

評估:使用閾值非常低。HighCharts具有良好的兼容性,並且成熟且廣泛使用。但是,風格很舊,很難擴展圖表。商業用途需要購買版權。

3) Echarts

https://echarts.apache.org/en/index.html

Echarts是百度數據可視化團隊的企業級圖表工具。它是一個純粹的Javascript圖表庫,可在PC和移動設備上平穩運行,並且與大多數當前瀏覽器兼容。

評估:Echarts擁有豐富的圖表類型,涵蓋了常規統計圖表。但它不像Vega和其他基於圖形語法的圖表庫那樣靈活,用戶很難訂製一些複雜的關係圖表。

4) Leaflet

https://leafletjs.com/

Leaflet是用於移動設備的互動式地圖的JavaScript庫。它具有大多數開發人員所需的所有映射功能。

評估:它可以專門針對地圖應用程式,並且與移動設備具有良好的兼容性。API支援插件機制,但功能相對簡單。用戶需要具備二次開發功能。

5) Vega

https://vega.github.io/vega/

Vega是一組互動式圖形語法,用於定義從數據到圖形,通用交互語法和常見圖形元素的映射規則。用戶可以自由組合Vega語法來構建各種圖表。

評估:完全基於JSON語法,Vega提供從數據到圖形的映射規則,它支援常見的交互語法。但是語法設計很複雜,使用和學習的成本很高。

6) deck.gl

https://deck.gl/#/

deck.gl是一個基於WebGL的可視化類庫,用於大數據分析。它由優步的可視化團隊開發。

評估:deck.gl專註於3D地圖可視化。有許多內置的地理資訊可視化常見場景。它支援大規模數據的可視化。但是用戶需要了解WebGL並且層擴展更複雜。

7) Power BI

https://powerbi.microsoft.com/en-us/

Power BI是一組業務分析工具,可在組織中提供見解。它可以連接數百個數據源,簡化數據準備並提供即時分析。組織可以在Web和移動設備上查看Power BI生成的報告。

評估:Power BI類似於Excel的桌面BI工具,而該功能比Excel更強大。它支援多個數據源。價格不高。但它只能用作單獨的BI工具,並且無法將其與現有系統集成。

8) Tableau

https://www.tableau.com/

Tableau是一種用於可視化分析數據的商業智慧工具。用戶可以創建和分發互動式和可共享的儀錶板,以圖形和圖表的形式描繪數據的趨勢,變化和密度。Tableau可以連接到文件,關係數據源和大數據源以獲取和處理數據。

評估:Tableau是桌面系統中最簡單的商業智慧工具。它不會強制用戶編寫自定義程式碼。該軟體允許數據混合和實時協作。但它價格昂貴,在訂製和售後服務方面表現不佳。

9) FineReport

http://www.finereport.com/

FineReport是一個用純Java編寫的企業級Web報告工具,它結合了數據可視化和數據輸入。它基於「無程式碼開發」概念設計。使用FineReport,用戶可以製作複雜的報告和酷炫的儀錶板,並通過簡單的拖放操作構建決策平台。

評估:FineReport可以直接連接到各種資料庫,方便快捷地訂製各種複雜的報告和酷炫的儀錶板。介面類似於Excel的介面。它提供19種類別和超過50種風格的自行開發的HTML5圖表,具有很酷的3D和動態效果。最重要的是它的個人版本是完全免費的。

結論

數據可視化是一個涉及許多學科的巨大領域。正是由於這種跨學科性質,可視化領域充滿了活力和機遇。