文/聶虎
隨著計算機技術的高速發展和物聯網在能源領域的運用,獲取的能源數據量越來越大,且呈現出高維、多態、多場景和動態性等特征。如何有效的展示海量能源數據,對于政府和企業理解數據的意義、發現隱藏在數據背后的規律、作出正確的決策,意義重大。通過將能源數據可視化,借助人眼快速的視覺感知和人腦的智能認知能力,能夠有助于高效的理解海量數據,并輔助數據分析。
能源數據產生于能源生產和消費過程,可以通過統計調查、實時采集等方式獲取。統計調查是有組織和目的的搜集數據,有明確的統計對象和調查表格,一般由政府部門和行業協會發起,此類能源數據結構化強,價值密度高,反映的意義明確;實時采集是供能和用能企業通過智能設備采集能源生產和消費過程中產生的實時數據,此類能源數據體量大,結構化和非結構化并存,價值密度低,通過數據挖掘能反映潛在規律。
能源數據體系龐大復雜,具備高維、多態、多場景和動態性等特征。具體來說,從品種看,就包括煤炭、石油、天然氣、電力、新能源和可再生能源等,從業務看,又可分為能源資源、能源消費、能源生產、能源供應、能源貿易、能源價格和能源效率等,從時序看,有實時、日度、周度、旬度、月度、季度、年度等,從粒度看,企業和地區等數據粒度較小,行業和國別等數據粒度較大。
陳為、沈則潛、陶煜波等著的《數據可視化》中,定義數據可視化為綜合運用計算機圖形學、圖像、人機交互等技術、將采集或模擬的數據映射為可識別的圖形、圖像、視頻或動畫,并允許用戶對數據進行交互分析的理論、方法和技術。數據可視化遵循成熟的流程框架,比較有代表性的有科學可視化的早期可視化流水線和信息可視化參考流程,前者是單向流程,描述將數據映射到可視空間,重點突出數據處理和圖形繪制,后者將前者的單向流程改為具備用戶交互的雙向流程,且用戶可在任何階段進行交互,突出了用戶的重要性。如圖1和圖2所示。
總結上述經典流程模型,數據可視化流程主要包括三個方面:
(1)數據表示與轉換。此部分是數據可視化的基礎,重點在于將數據由原始狀態轉換為便于計算機進行可視化處理和展現的狀態。
(2)數據可視化的呈現。此部分將處理后的數據轉換為可視化形式并呈現給用戶,由于同一數據集可能存在多種視覺呈現形式,因此重點和難點在于從中選擇最直觀、準確和易于操作的方式。
(3)用戶交互。由于用戶通過交互操作看到視圖,因此交互是可視化手段輔助分析決策的推動力,重點和難點在于設計出適用于海量數據的交互技術。
數據可視化一般可分為統計數據可視化、地理空間數據可視化和關系數據可視化。統計數據可視化,表現形式有表格、折線圖、柱形圖、直方圖、散點圖、面積圖和餅圖等,能顯示數據分布情況、變化趨勢或對比關系,統計學上也常用莖葉圖和箱形圖顯示原始數據的統計值分布情況;地理空間數據可視化,一般結合地圖與熱力圖、散點圖、線圖等實現;關系數據可視化,有錐形圖、樹圖、桑基圖等,其中桑基圖在能源數據可視化領域使用較多,也被稱為能流圖,用于反映能源生產和消費之間的流動狀況。
鑒于能源數據高維、多態、多場景、動態性的特點,能源數據可視化借助機器的高效提高工作效率,讓用戶可以專注于決策分析。能源數據可視化遵循信息可視化參考流程,強調交互過程,通過用戶與可視化的交互挖掘能源數據深層次的信息。目前,常用于實現能源數據可視化的技術路線有基于可視化軟件和Web可視化開發兩種,前者基于成熟的軟件,優點是學習成本低,只需掌握軟件的功能操作,基本上可以零代碼量完成數據可視化工作,缺點是只能實現軟件提供的功能,局限性較大,后者基于Web開發技術,優點是可以結合需求和實際情況定制開發,靈活性高,缺點是需要具備基本的Web編程技術,有一定技術門檻。
適用于能源數據可視化的常用軟件有Tableau、Power BI和FineBI等,此類軟件一般屬于商業軟件,能提供良好的使用體驗,用戶通過拖拽、選擇和過濾等所見即所得的方式即可完成數據可視化工作。
3.1.1 Tableau
Tableau是數據可視化領域的明星產品,起源于斯坦福大學的科研成果,在Gartner發布的商務智能及分析平臺魔力象限圖中長期位于領導者地位。Tableau使用獨有的VizQL數據庫,能夠將拖動轉化為數據查詢,然后將數據以可視化的形式呈現,實現了數據可視化的快速實現。此外,Tableau用戶體驗良好,并提供了豐富的可視化圖表組件。
3.1.2 Power BI
Power BI是由微軟開發的可視化軟件,在Gartner發布的商務智能及分析平臺魔力象限圖中也位于領導者地位。Power BI的交互操作類似于Microsoft Office軟件,熟悉Office操作能較快上手。Power BI提供了免費版,免費版雖然不具備共享和協作等功能,但是極大的降低了使用成本。
3.1.3 FineBI
FineBI是帆軟推出的可視化軟件,帆軟在IDC發布的中國BI市場跟蹤報告中處于領先地位。FineBI基于B/S架構,能支持多種數據源連接,并提供了豐富的可視化圖表組件和樣例,也提供免費試用。此外,帆軟作為國內廠商,在中文社區資源和本土化支持方面更有優勢。
Web可視化是數據可視化技術和互聯網蓬勃發展帶來的產物,其基于B/S結構,通過HTML、CSS、JavaScript等Web前端開發技術和瀏覽器實現數據的可視化。Web可視化的底層技術規范有SVG、Canvas 2D、Canvas 3D WebGL等,區別在于SVG是矢量圖形,Canvas是位圖。基于上述Web可視化底層技術,目前流行的數據可視化組件庫有D3.js、ECharts、AntV等,均能提供豐富的圖表元素,滿足能源數據可視化的需求。

圖1:科學可視化的早期可視化流水線

圖2:信息可視化參考流程
3.2.1 D3.js
D3.js(Data-Driven Documents) 是面向Web標準的JavaScript可視化庫,基于HTML、SVG和Canvas構 建,能 支 持Chrome、Edge、Firefox和Safari等主流瀏覽器。D3.js通過數據驅動實現數據的可視化,即將數據綁定到DOM,對DOM進行操作實現數據的可視化。由于D3.js提供基于數據的DOM操作,能直接對底層數據操作,數據可視化的靈活性極強,可以實現各種復雜的可視化圖表,劣勢是相較于ECharts等charts類庫實現成本較高。
3.2.2 ECharts
ECharts是由百度開源的JavaScript可視化庫,起源于百度自身業務數據可視化的需求,目前已進入Apache孵化器。ECharts包括ZRender層和Echarts層,ZRender層用于隔離底層的渲染引擎,能支持Canvas、SVG、VML等格式,ECharts層是具體的可視化圖表、交互和外部程序調用的接口。Echarts提供了豐富的圖表樣式和交互形式,開發人員通過較簡單的配置和學習就能實現數據的可視化,劣勢是靈活性不如D3.js,實現定制化的圖表較為困難。
3.2.3 AntV
AntV是螞蟻金服開源的可視化解決方案,由G2、G6、F2和L7組成,已被阿里集團內外的大量業務系統使用。其中,G2提供了一套數據驅動、高交互的數據可視化圖形語法,F2是G2設計理念在移動端的實現,G2和F2可以提供豐富的統計數據可視化圖表,并在實現上遵循《The Grammar of Graphics》,將可視化理論和Web技術做了很好的結合;G6、L7分別面向關系數據可視化和地理空間數據可視化。由于AntV采用了圖形語法,并對復雜交互作了封裝,其靈活性和實現成本介于D3.js和Echarts之間。
通過數據可視化技術,能顯著提高對復雜能源數據的分析能力,對于政府和企業開展規劃、決策和支持有重要意義。本文基于能源數據的特點和數據可視化理論,提出了適用于能源數據可視化的兩種技術路線,即使用可視化軟件和Web可視化開發,并分別介紹了不同技術路線的主流實現方式和特點。