數無形時少直覺,形無數時難入微。——華羅庚javascript
咱們都嘗試去觀察生活,可是有時卻缺乏了總結生活;有時咱們太着眼細節,忽略了大局。數據和可視化彷佛是兩個好兄弟,就像仰望星空與腳踏實地的兩種狀態。php
數據是可視化的第一步,這裏和你們提一提數據處理。html
用戶使用軟件,瀏覽網頁、APP會不間斷產生各類數據。若是咱們任由數據增加而不使用,那就是暴殄天物,但就算咱們有了使用數據的意識,卻也不必定能發揮數據的價值,因此將數據進行分析是使數據發揮價值的第一步。 複雜的業務帶來的後果是不一樣產品間用戶數據相互隔離,咱們稱之爲」數據孤島「,讓數據用起來的第一步即是將該孤島鏈接,將凌亂數據歸類爲數據資產,這裏面臨的問題就是數據的來源太多,咱們必須針對多種數據源作適配處理,離線將數據經過預設算法寶進行處理,創建標籤系統,根據業務不一樣緯度生成處理數據,最終經過可視化手段、標籤體系、已訓練模型,支撐業務。同時業務又反過來提供源源不斷的數據,造成閉環。java
咱們可以感知到,可視化是數據處理的應用上層。至於對於數據的處理,其實底層是很複雜的,從__數據採集__到__數據存儲__到__數據加工__變爲數據資產,進而使用數據資產拓展上層應用,可視化是其中一種。git
通常優先選用系統內置字體,固然若是有定製字體則可選用定製字體,數據信息相關字號通常14px以上,這樣大屏觀看時,更清晰。github
分辨率 | html font-size |
---|---|
1366*768 | 12px |
1920*1080(1080p) | 16px |
2560*1440(2k) | 22px |
3840*2160(4k) |
基於以上考慮,咱們能夠設計一種基於網格形式大屏開發方案。web
適當動畫可提高大屏趣味性,但必定要注意主次。更具實際須要肯定交互方式。算法
大屏需求大多數可藉助封裝的組件庫、工具庫較快完成,部分需求須要使用偏底層技術實現,通常用到的技術點以下:sql
咱們也可使用半成品進行定製,SVG相關:SVG.js、snap,Canvas 2D有:zrender、ocanvas、EaselJS 等。數據庫
圖表庫 | 繪圖庫 | 動畫庫 |
---|---|---|
ECharts | three | anime |
HightCharts | D3 | mo |
Chart | SVG | Popmotion |
Chartist | Snap | Bounce |
AntV系列 | Raphaël | Tween(補間動畫) |
部署方式 | 特色 | 優點 | 劣勢 |
---|---|---|---|
私有部署 | 項目徹底部署在客戶服務器上 | 數據更安全、架構易調整 | 擴容不易、初建成本高 |
雲部署 | 項目徹底部署在雲端 | 使用靈活、按需付費 | 數據有風險 |
混合部署 | 重要內容在客戶服務器,部分在雲端 | 使用更爲靈活 | 提升程序複雜 |