數據可視化的本質是:將數據映射到圖形,同時將一些附加信息傳達給用戶。數組
一個可視化框架須要四部分:
* 數據處理模塊,對數據進行加工的模塊,包括一些數據處理方法。例如:合併、分組、排序、過濾、計算統計信息等
* 圖形映射模塊,將數據映射到圖形視覺通道(後面章節介紹)的過程。例如:將數據映射成顏色、位置、大小等
* 圖形展現模塊,決定使用何種圖形來展現數據,點、線、面等圖形標記
* 輔助信息模塊,用於說明視覺通道跟數據的映射關係,例如:座標軸、圖例、輔助文本等markdown
G2實現了上面的四個模塊,而且對着四個模塊作了更進一步的細分:框架
這些細分的模塊在單獨的章節中各自介紹:ide
可視化從數據映射到圖形須要如下流程:函數
G2的數據映射到圖形的過程總體上遵循這個流程,可是細節上有所增長:網站
幾個大的流程:ui
小流程的簡介:spa
過濾列,防止傳入數據的列數過多,僅過濾出參與語法的列3d
var data = [{a: '1',b: 'b',c: 'c1',d: 10}] // 數據中存在a,b,c,d四列 。。。 chart.point().position('a*b').color('c') // a,b,c參與了語法,因此d字段被過濾掉
數據調整,爲了更清晰的展現數據,圖形有時候須要層疊、分組、散開等,此時須要對數據進行調整code
訓練度量度量包含了數據字段的信息,例如連續字段的最大值、最小值等信息,分類字段包含的分類,數據一旦進行調整,那麼度量中的信息再也不準確,因此須要進行度量的訓練
計算圖形須要的點,繪製圖形時須要多個點,例如繪製一個柱狀圖,須要4個點,若是將座標系轉換,仍然是這4個點,僅僅是鏈接點的方式不一樣,就會生成不一樣的圖表
映射,將數據映射到圖形空間的視覺通道
更詳細的數據流程介紹和示例在後面的各種圖表中分別展現
咱們能夠看到,在數據進行圖形映射的流程中,數據類型很是重要,不一樣的數據類型影響不一樣的映射方式,下一章節咱們介紹數據分類和度量
G2 網站: https://g2.alipay.com/