這兩年數據可視化大屏被炒的很熱,老闆動不動開口就要“酷炫大屏”,大屏的應用場景確實很多,不僅能實時監控重點數據,提高決策效率,放在公司會議室,展台等地方,還能提升公司形象。
於是各種講怎麼做大屏的文章越來越多了,但大師兄看到一些文章把大屏製作說的神乎其技,低門檻,成本低,給很多企業和IT從業者帶來了誤導,導致很多公司興沖衝去搞大屏項目,但是花費了巨大的時間和成本,做出來的大屏實用性並不高。
為此,大師兄特地請教了一個接觸可視化大屏項目4年多的老技術,給大家科普一下實際工作中,一個可視化大屏項目的上線流程,順帶給大家掃一掃對大屏認知的誤區。
可視化大屏項目實施流程
一般整個大屏開發流程可劃分為六個部分,之前的文章里我介紹過,這邊再簡要講一下:
1、需求調研:最耗費時間,最重要的一步。大屏需求調研是大屏項目的重中之重,搞清楚業務需求,做出來的大屏才有應用的價值,這個過程需要和業務方溝通確認,耗時很長,不少大屏項目前期需求沒溝通清楚就動手開發,後面改到哭爹喊娘。
除了業務需求調研之外,如果要在硬件上展示的大屏,還需要對大屏硬件進行需求調研,比如大屏顯示設備採購、分辨率輸出等等。
2、原型設計:大屏展示什麼指標,指標如何布局,一般需要列一個指標清單,和業務方明確。然後圖表的樣式,可視化交互功能,如鑽取、聯動、輪播等,根據排版好的內容落地成原型圖demo。
3、藍圖方案:然後根據原型圖進行視覺美化,需要結合屏幕尺寸、分辨率、大屏的風格來設計。對於大屏而言,藍圖方案除了業務、數據、技術、實施方案外,更重要的是對大屏的指標、功能點、預期效果進行整理輸出。
4、效果落地:根據藍圖在前端繪製demo
5、數據處理:數據處理大致分為三步,底層數據處理,前端數據展現,數據校對。根據數據量和實時性需求權衡是否需要做結果表。
- 數據量小(計算簡單),准實時,不需要結果表
- 數據量大(計算複雜),准實時,需要結果表。
- 數據量小(計算簡單),實時,不需要結果表。
- 數據量大(計算複雜),實時,需要技術方案(如kafka+flink)
6、大屏調試:理論上顯卡分辨率和PC端調試分辨率一致的情況下且字體自適應,不需要過多調試,在條件允許的情況下,建議在效果圖落地甚至原型圖設計階段就進行大屏預調試。
這樣一套流程下來,一個大屏項目周期在10-20人天不等,如果需求複雜,很有可能一個項目耗費1-2個月,這之後還有相當大的維護工作要做,所以單純從技術角度去做一張大屏很容易,但是要完成一個實用的大屏項目並不簡單。
可視化大屏技術上如何實現?
通常做大屏前端方案設計有三類選擇,①是自行開發,利用開源的自定義可視化圖表;②是找集成商定製,可以軟硬件一體化承包;③是利用BI/報錶廠商的工具來製作。
1、自行開發。比如基於vue、Echart 框架構建大屏展示模板,網上有很多開源源碼。其自帶一些動效,比如數據動態刷新渲染、屏幕適應、內部圖表自由替換、Mixins注入等功能,這個是前端。後端需要另寫一套框架請求數據,一般java。
後端開發比較麻煩,如果數據需求複雜的話,比如需要多源數據連接,不斷的數據抽取和更新,定製開發難度會上升,代碼複雜了多了還有BUG,製作周期比較長,維護成本比較高。
大師兄見過很多項目前期都是做了源碼開發的嘗試,最後因為不穩定,沒人維護等原因走了商業開發。
2、大屏定製廠商:這種定製不是那種簡單的圖表展示。通常都是特殊需求,如3D建模,往往需要專業做可視化的廠商來按需定製。技術上基於三維的引擎來定製大屏效果。商業定製效果通常來說都是最優的,但實施成本和後期維護成本也是極其高昂的,實施起來幾十到幾百萬不等。
3、BI/報表做大屏幕。現在很多大屏項目都是用BI/報表工具來開發,比如我們的報表工具FineReport。
雖然其本身是報表工具,但它是一個能很好解決前端展示和後端數據讀取連接的平台。再者本身提供構建可視化的“畫布”(在FineReport里叫設計器),拖拽操作,對大屏的和移動設備也提供了一套高效可用的設計模式,構建可視化的成本比較低,上手也比較容易,光這一點就能節約不少的開發人力。
可視化方面,為大屏效果專門提供可復用模板和組件,能滿足絕大部分大屏的需求,涉及到特殊3D模型,也可和專業廠商做集成,提供建模實施方案。
給大家整理了40+可視化大屏素材,更換數據能夠直接使用,點擊查看工具和素材包下載地址
另外,項目管理往往需要考慮成本,人力成本和後續的維護成本。FineReport具備前端展示和後端數據讀取的技術條件,平台化的產品,後續維護成本也相對較低,收到了眾多企業大屏項目的青睞。
大家對可視化大屏有哪些認知誤區?
誤區一:拿效果圖當最終實現目標
我們經常能在網上看到很多視覺效果非常驚艷的效果圖,拿來做參考,但是大部分的效果圖都不能百分百復現,因為我們實際實施時需要適配屏幕分辨率,比如字體能否自適應大小。
一些動態展示如3D旋轉以及圖表空間和數據刷新的速率也無法看見,基本上實際圖做出來會和效果圖差那麼一兩成。
誤區二:大屏僅僅是前端技術
很多人把大屏理解為單純的前端展現技術,想的太簡單了,數據從哪裡來,是讀業務數據庫還是建立中間庫,數據更新的頻率要求是什麼,數據質量有無問題還要先做底層數據處理?
硬件方面,需要明確大屏的尺寸、種類、驅動大屏的主機?業務方面,大屏展示什麼指標和維度,業務分析邏輯誰來支撐?這些都是要考慮的。
誤區三:大屏成本低,實現快
據我所知,一個大屏項目十幾萬是常有的事,上千萬的大屏項目我也見過。大屏的成本除去前端設計和定製還有硬件費用,一個大屏硬件都是十幾萬、幾十萬起步。另外有一些智慧城市、製造行業有3D建模需求的,需要定製建模渲染,那成本就是無底洞了,有待商榷。
大屏的前端技術實現有很多種方案,有低代碼的繪製,也有全代碼的定製,取決於技術和需求,技術和業務需求總是相互取捨的。