數據可視化與G2
目錄
- 目的
- 什么是數據可視化
- 數據可視化的階段
- G2的定位和規划
目的
從事數據可視化有2,3年的時間了,發現大多數人對數據可視化的認知就是繪制圖表。因此我想寫一些可視化框架設計的文章,這些文章,提供了一整套可視化框架的設計思路和實現細節,希望能讓大家對可視化有更多的理解,更好的在業務中使用可視化。
什么是數據可視化
數據可視化使用數據和圖形技術將信息從數據空間映射到視覺空間,是一門跨越了計算機圖形學、數據科學、自然科學和人機交互等領域的交叉學科。
上面的領域模型過於復雜,我們在數據可視化的工作中更關注數據和圖形,由此對數據可視化的領域模型進行了簡化:
- 數據:聚焦於解決數據的采集,清理,預處理,分析,挖掘。
- 圖形:聚焦於解決對光學圖像進行接收、提取信息、加工變換、模式識別及存儲顯示。
- 可視化:聚焦於解決將數據轉換成圖形,並進行交互處理
當前掌握的知識和一個數據可視化工作者需要掌握的知識領域:
數據可視化階段
從市場上的數據可視化工具來看,數據可視化分為這么幾個階段:
- 數據統計圖表化
- 數據結果展示化
- 數據分析過程可視化
- VR/AR 階段的虛擬現實的可視化
數據統計圖表化
這個階段是使用傳統的統計性圖表來展示數據,其中的代表作是highcharts,echarts 等圖表庫,這些框架的優點在於:
- 最成熟的可視化工具,包含的圖表都是常見圖表,易於用戶理解和開發人員使用
- 開發成本低,對圖形技術和數據知識的要求不高
缺點同樣明顯:
- 配置項復雜、擴展性差、圖表表現單一
- 適用范圍窄,對樹狀、網狀結構支持差;數據維度和數據量的展示都受限
數據結果展示化工具
隨着數據業務對可視化需求的要求越來越高,可視化的范圍已經不僅僅限制於統計性圖表,業務上需要顯示更多維度的數據、更多樣的圖形展示數據。這就需要能夠業務方根據自己的需求定制圖表,這個階段的工具主要有 d3.js,rapheal等框架,這些框架提供了更加細力度的圖形工具,更多的圖形算法,這類框架的優點:
- 功能強大、交互性強、適用范圍廣
- 集成了大量的圖形算法、可視化算法,降低復雜的圖表的成本
- 社區力量強大、大量示例
同樣存在一些共性的問題:
- 需要細粒度的操作圖形,學習、開發成本高
- 個性化需求多,復用性差
數據分析可視化工具
前面的工具都是基於先驗模型,已與檢測已知模式和規律,對復雜、異構、大尺度數據的自動處理經常會失效,所以需要對數據的分析過程進行可視化,更好的探索規律、查找問題。數據分析的可視化工具,目前市場上做的最好的是tableau、R語言中的ggplot2等,這些產品優點:
- 跟數據分析密切關聯,集成了大量數據相關的算法
- 可以對數據分析的中間環節進行可視化展示
缺點:
- 專業度強,不宜入門
VR/AR 階段的虛擬現實的可視化
正在探索中
G2
當前支持業務的特點,決定了我們數據數據可視化的工作內容:
- 基本的統計性圖表依然占可視化的很大比例,但是開發受困於各種圖表庫的不完整性、數據的輸入輸出不一致、語法的繁瑣,導致體驗差,開發效率低。
- 越來越多的業務開始有更多維度的數據展示需求,傳統的統計性圖表已經不能滿足需求,越來越多的可視化定制需求
- 在線的數據分析業務開始興起,傳統的PC版工具不能滿足需求
- 滿足現有的統計性圖表需求,提供一套極為簡單的圖形語法,完成數據從數據空間映射到圖形空間。
- 提供各種圖形的擴展語法,支持異構復雜的數據類型,是一套強大的可視化工具
- 探索在數據技術在可視化上的應用,以在線數據分析為入口,提供數據分析的可視化能力
G2的roadmap
G2已經完成了 1.0,1.1,1.2的開發,前幾個版本完成了以下內容:
整體的roadMap:
- antV 是一套我們在支持可視化業務中的實踐規范,用於幫助用戶在合適的場景使用合適的圖表
- G 繪圖庫,是我們數據可視化的繪圖底層,需要在3D、動畫、交互上做擴展
- G2 1.x已經開發完畢,實現了一套簡單易用的圖形化語法,滿足統計圖表的需求。
- G2 2.x正在開發中,希望能夠用數據和圖形映射的方式,屏蔽圖形繪制的細節,使用戶能夠定制個性化的可視化需求,D3能繪制的圖形,都應該能夠使用簡單的語法實現。
- G2 3.x的功能,之前僅僅嘗試過簡單的回歸、擬合等數據算法,后期需要跟數據部門結合,構造在線版的數據分析工具。
結語
幾個網站地址:
- g2: https://g2.alipay.com/
- antV: https://antv.alipay.com/
- github: https://github.com/antvis
后續我們會發布一系列可視化框架設計方面的文章,講述G2的整體設計思路的和各種語法元素的設計細節,歡迎大家參與我們的可視化工作。