能源数据可视化应用
2020-01-16聂虎
文/聂虎
随着计算机技术的高速发展和物联网在能源领域的运用,获取的能源数据量越来越大,且呈现出高维、多态、多场景和动态性等特征。如何有效的展示海量能源数据,对于政府和企业理解数据的意义、发现隐藏在数据背后的规律、作出正确的决策,意义重大。通过将能源数据可视化,借助人眼快速的视觉感知和人脑的智能认知能力,能够有助于高效的理解海量数据,并辅助数据分析。
1 能源数据的特点
能源数据产生于能源生产和消费过程,可以通过统计调查、实时采集等方式获取。统计调查是有组织和目的的搜集数据,有明确的统计对象和调查表格,一般由政府部门和行业协会发起,此类能源数据结构化强,价值密度高,反映的意义明确;实时采集是供能和用能企业通过智能设备采集能源生产和消费过程中产生的实时数据,此类能源数据体量大,结构化和非结构化并存,价值密度低,通过数据挖掘能反映潜在规律。
能源数据体系庞大复杂,具备高维、多态、多场景和动态性等特征。具体来说,从品种看,就包括煤炭、石油、天然气、电力、新能源和可再生能源等,从业务看,又可分为能源资源、能源消费、能源生产、能源供应、能源贸易、能源价格和能源效率等,从时序看,有实时、日度、周度、旬度、月度、季度、年度等,从粒度看,企业和地区等数据粒度较小,行业和国别等数据粒度较大。
2 数据可视化概述
2.1 数据可视化流程
陈为、沈则潜、陶煜波等著的《数据可视化》中,定义数据可视化为综合运用计算机图形学、图像、人机交互等技术、将采集或模拟的数据映射为可识别的图形、图像、视频或动画,并允许用户对数据进行交互分析的理论、方法和技术。数据可视化遵循成熟的流程框架,比较有代表性的有科学可视化的早期可视化流水线和信息可视化参考流程,前者是单向流程,描述将数据映射到可视空间,重点突出数据处理和图形绘制,后者将前者的单向流程改为具备用户交互的双向流程,且用户可在任何阶段进行交互,突出了用户的重要性。如图1和图2所示。
总结上述经典流程模型,数据可视化流程主要包括三个方面:
(1)数据表示与转换。此部分是数据可视化的基础,重点在于将数据由原始状态转换为便于计算机进行可视化处理和展现的状态。
(2)数据可视化的呈现。此部分将处理后的数据转换为可视化形式并呈现给用户,由于同一数据集可能存在多种视觉呈现形式,因此重点和难点在于从中选择最直观、准确和易于操作的方式。
(3)用户交互。由于用户通过交互操作看到视图,因此交互是可视化手段辅助分析决策的推动力,重点和难点在于设计出适用于海量数据的交互技术。
2.2 数据可视化基本图表
数据可视化一般可分为统计数据可视化、地理空间数据可视化和关系数据可视化。统计数据可视化,表现形式有表格、折线图、柱形图、直方图、散点图、面积图和饼图等,能显示数据分布情况、变化趋势或对比关系,统计学上也常用茎叶图和箱形图显示原始数据的统计值分布情况;地理空间数据可视化,一般结合地图与热力图、散点图、线图等实现;关系数据可视化,有锥形图、树图、桑基图等,其中桑基图在能源数据可视化领域使用较多,也被称为能流图,用于反映能源生产和消费之间的流动状况。
3 能源数据可视化技术路线
鉴于能源数据高维、多态、多场景、动态性的特点,能源数据可视化借助机器的高效提高工作效率,让用户可以专注于决策分析。能源数据可视化遵循信息可视化参考流程,强调交互过程,通过用户与可视化的交互挖掘能源数据深层次的信息。目前,常用于实现能源数据可视化的技术路线有基于可视化软件和Web可视化开发两种,前者基于成熟的软件,优点是学习成本低,只需掌握软件的功能操作,基本上可以零代码量完成数据可视化工作,缺点是只能实现软件提供的功能,局限性较大,后者基于Web开发技术,优点是可以结合需求和实际情况定制开发,灵活性高,缺点是需要具备基本的Web编程技术,有一定技术门槛。
3.1 基于可视化软件
适用于能源数据可视化的常用软件有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架构,能支持多种数据源连接,并提供了丰富的可视化图表组件和样例,也提供免费试用。此外,帆软作为国内厂商,在中文社区资源和本土化支持方面更有优势。
3.2 Web可视化开发
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之间。
4 总结
通过数据可视化技术,能显著提高对复杂能源数据的分析能力,对于政府和企业开展规划、决策和支持有重要意义。本文基于能源数据的特点和数据可视化理论,提出了适用于能源数据可视化的两种技术路线,即使用可视化软件和Web可视化开发,并分别介绍了不同技术路线的主流实现方式和特点。