大数据可视化工具比较及应用
Posted 中青联盟云南大数据
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据可视化工具比较及应用相关的知识,希望对你有一定的参考价值。
1 研究背景
随着移动互联网、物联网、云计算等诸多新技术的发展,数据呈爆炸式增长。根据国际数据公司(International Data Corporation,IDC)在2012年发布的报告显示,全球数字资源在2010年首次突破了ZB(Zettabyte, 1 ZB=240 GB)级别,进入ZB时代[1]。IDC在2017年发布的《数据时代2025》报告显示2016年全球数据信息总量已达到16.1 ZB,并预测2025年将会升至163 ZB,是目前的10倍之多[2]。
大数据是一个宽泛的新概念,一般是指通过快速获取、处理、分析以从中提取价值的海量、多样化的交易数据、交互数据与传感数据,其最终目标就是从复杂的数据集中发现新的模式与知识,挖掘得到有价值的新信息。大数据具有体量巨大(volume)、类型繁多(variety)、时效性高(velocity)以及价值密度低(value)的特征[3],这给大数据分析带来极大的挑战。随着各行业和部门产生的数据量急剧增长,工业界和学术界共同努力,提出了各种数据分析方法,如数据挖掘、机器学习、智能算法、统计分析等,但这些方法对专业知识要求较高,普通用户难以利用并从中挖掘数据信息。
人类对信息的吸收能力非常有限,而从外界获得的信息约有80%以上来自于视觉系统[4]。当数据通过可视化工具以直观的图表形式展示,人们往往能一眼识别出图形特征并转化为有特殊含义的信息。大数据可视化工具为人类利用大数据提供了极大便利。
2 大数据可视化研究现状
2.1 国内外可视化研究团队
为更好地利用大数据,国外许多知名高校如麻省理工学院、斯坦福大学、卡耐基梅隆大学、佐治亚理工学院等将大数据可视化作为研究课题。麻省理工学院的研究团队专门研究城市信息的可视化,出版刊物总计744篇并广为引用。斯坦福大学正在进行的项目包括用于交互式可视化的新语言、理论模型、探索性分析工具和设计工具、评估可视化工作的感知实验以及大规模文本分析、人口基因组学等领域的可视化分析系统。
国内也有不少高校成立了相关研究团队,如北京大学可视化与可视分析研究组、浙江大学可视分析小组等。浙江大学可视化分析小组与国内外高校和科研机构广泛合作,有DataV数据可视化组件库、全球尺度三维数值大气可视分析系统等多项成果。
除了学术研究机构以外,企业、媒体、个人、工作室等都积极参与数据可视化研究中,特别是新媒体,他们自发地开始相关尝试,将数据通过叙事的方式展现给目标受众。国内外相关研究团队的官网及主要成果见表1。
2.2 数据可视化相关会议
IEEE VIS是可视化领域最具权威的国际性学术会议,由三大学术会议组成:IEEE Visual Analytics Science and Technology(VAST)、IEEE Information Visualization(InfoVis)和 IEEE Scientific Visualization(SciVis)。随着数据可视化的研究成为大数据领域的研究热点,越来越多的可视化会议在2018年召开,见表2。
2.3 大数据可视化研究综述
随着大数据可视化研究的进展,国内有不少学者撰写了大数据可视化方面的综述论文。文献[5] 分析支持大数据可视分析的基础理论,包括支持分析过程的认知理论、信息可视化理论、人机交互与用户界面理论,并在此基础上讨论面向大数据主流应用的信息可视化技术——面向文本、网络(图)、时空、多维的可视化技术。文献[6]围绕大数据分析的本质,对大数据可视化技术的内涵进行剖析,然后从人的视觉原理和可视化两个角度对可视化分析技术原理进行综述,最后介绍大数据可视化在新闻传媒和态势感知两个领域的应用情况。文献[7]总结生命科学研究领域中不同类型生物大数据的可视化研究进展,最后讨论目前生物大数据可视化所面临的挑战并提出可能的解决方案。
3 大数据可视化工具
3.1 开源工具
数据可视化的实现一般依赖开源程序作为支柱。学术界的数据可视化大多基于R语言进行静态绘图,主要适用于统计学家。在商业环境中的可视化主要是面向普通大众,因为具有交互性的Processing、D3.js等主流工具更适用于交互性数据展示,见表3。
开源工具在一定程度上推动了可视化的进步,许多工具都是在现有的基础上进行改进和完善。以D3.js为例,其是由Mike Bostock和斯坦福可视化组的Jeff Heer制作的,而以此为基础而开发的可视化工具举不胜举,如Data.js、RAWGraphs等。
3.2 商业工具
开源的可视化工具通常需要一定的编程能力,且在资源共享上有不便之处,往往不适合企业用于商业用途。有许多公司带领团队推出了商业性质的数据可视化工具,如Tableau、Excel、Splunk等,见表4,其中Excel是微软推出的办公软件之一,可以快速浏览数据并创建可视化图形,但由于样式及颜色的限制,难以在专业刊物、网站等场合使用;而Tableau作为一个专业的可视化工具,模板丰富,操作简单,上手容易,可以直接通过对数据的操纵完成可视化。
3.3 差异分析
数据可视化应用领域的广泛性及数据可视化的普遍性,使得可视化工具侧重领域、操作特性、受众群体也各不相同。
在某个研究领域内,存在表现形式的差异性。例如,在地理分析方面,地理信息可视化有地图(图形)、多媒体、虚拟现实等多种表现内容,有二维、三维、多维动态等多种空间维数可视化效果。解决实际问题时,往往需要针对具体问题进行具体分析并选择合适的可视化工具。
针对同一个数据集的可视化,也可能因为用户的差异而有多种选择。用户一般分为普通大众和专家学者。前者在进行可视化工作时更倾向于选择操作简易、入门门槛低的可视化工具,如一些由企业开发的商业工具Tableau等;而具有相关基础的专家学者或具备一定能力的用户,通常选择一些开源的工具进行相关研究。
4 典型可视化工具教学实例
4.1 Tableau
4.1.1 连接数据
Tableau对数据的导入和加载都是向导式的。Tableau支持连接到文件(包含Excel、文本文件、Access、JSON文件、PDF文件、空间文件、统计文件等)、服务器(包含Tableau Sever、Microsoft SQL Server、mysql、Oracle、Amazon Redshift等)。单击数据选项卡中的新建数据源功能,可以根据向导提示完成数据的连接。
4.1.2 可视化分析实例
表5中4个二维数据点集的单维度均值、最小二乘法回归线方程、误差的平方和、方差的回归和、均方误差的误差和、相关系数等统计属性均相同,因此,传统的统计方法难以对它们直接进行区分并发现其数据模式。
利用Tableau,通过简单的拖拽,将实际的数据分布情况用二维可视化呈现,观察者可迅速地从图1中发现数据中蕴含的不同模式和规律。
4.2 Power BI
4.2.1 连接数据
Power BI Desktop可以连接到来自许多不同源的数据。在主页功能区中选择“获取数据”,可以选择文件、数据库、Azure、Online Services、其他五大类数据源。此外,Power BI Desktop还支持直接输入数据。数据源以数据表形式呈现,该软件提供了“查询编辑器”帮助用户进行数据的预处理。
4.2.2 可视化分析实例
以表6数据(第39次《中国互联网络发展状况统计报告》)[8]为例,对内地各省网民人数情况进行可视化。完成数据源的连接之后,可以在字段窗格看到该表下的两个字段“省份”与“网民数/万人”。通过Power BI可以将网民的地理位置进行可视化,迅速发现我国的网民分布情况。
4.3 D3(Data-Driven Documents)
4.3.1 引用文件
D3.js是一个javascript函数库,因此在使用时需要在html页面中进行引用。D3的官方网站(http://d3js.org)下载d3.zip文件,解压后可得d3.js、d3.min.js、LICENSE(版权许可证)文件,在开发调试时一般使用d3.js。
在index.html中引用d3.js,以d3文件夹所在目录为index.html文件所在目录的上一层目录为例,代码如下:
<script ></script>
4.3.2 数据处理与绘制
以英语教学中的非谓语动词知识点为例,制作思维导图,主要步骤如下。
(1)读取与index.html文件同一目录下的learn.json文件数据,主要代码如下:
d3.json("learn.json",function(error,root){
//遍历节点
function setId(rootnode){
……
}
}
(2)绑定数据并处理,主要代码如下:
//重绘函数
function redraw(source){
//绑定节点数据
var nodeUpdate = svg.selectAll(".node")
.data(nodes, function(d){ return d.id; });
//绑定连线数据
var linkUpdate = svg.selectAll(".link")
.data(links, function(d){ return d.target.id; });
//处理节点、连线
……
}
(3)进行绘制,主要代码如下:
//绘制画布大小
var svg = d3.select("body")
.append("svg")
.attr("width", width)
.attr("height", height);
//树状图布局
var tree = d3.layout.tree()
.size([height, width]);
//对角线生成器
var diagonal = d3.svg.diagonal()
.projection(function(d) { return [d.y, d.x]; });
//以第一个节点为起始节点,重绘
redraw(root);
4.3.3 结果分析
非谓语动词思维导图如图2所示,使用D3.js,利用网页编程,可将具有层次结构的文本数据以可视化图表形式展出,使知识结构更加清晰。完成的网页易于传播,可以为学生提供在线复习资料,在实践教学中有一定意义。
5 结 语
大数据可视化分析工具为人类分析大数据隐含的知识带来便利。笔者从是否开源的角度,对大数据可视化工具进行了比较分析,并介绍了3个典型可视化工具的教学实例,从中发现,开源可视化工具需要用户具备一定的编程基础,如JavaScript基础知识等,其易用性还需进一步提高。为了更好地利用大数据,还需要学术界和工业界合作,开发更多开源且适于普通用户使用的可视化工具。
基金项目:
2016年浙江省大学生科技创新活动计划(新苗人才计划)项目(2016R430006);浙江省教科规划2017年度(重点)研究课题(2017SB068);台州学院2016年度高等教育教学改革重点项目。
作者简介:
陈小燕,女,在读本科生,研究方向为大数据可视化;郭文平(通信作者),男,副教授,研究方向为计算机网络及信息系统,guo_wp@126.com。
参考文献:
[1] Gantz J, Reinsel D. The digital universe in 2020: Big data, bigger digital shadows, and biggest growth in the far east[J]. IDC Analyze the future, 2012(12): 1-16.
[2] Reinsel D, Gantz J, Rydning J. Data age 2025: The evolution of data to life-critical[EB/OL]. [2017-12-29]. https://www.seagate.com/www-content/our-story/trends/files/Seagate-WP-DataAge2025-March-2017.pdf.
[3] 刘智慧, 张泉灵. 大数据技术研究综述[J]. 浙江大学学报(工学版), 2014(6): 957-972.
[4] Ren L. Research on interaction techniques in information visualization[D]. Beijing: The Chinese Academy of Sciences, 2009.
[5] 任磊, 杜一, 马帅, 等. 大数据可视分析综述[J]. 软件学报, 2014, 25(9): 1909-1936.
[6] 付长军, 乔宏章. 大数据可视化技术探析[J]. 无线电通信技术, 2017(5): 1-5.
[7] 周琳, 孔雷, 赵方庆. 生物大数据可视化的现状及挑战[J]. 科学通报, 2015(增刊1): 547-557.
[8] 中央网络安全和信息化领导小组办公室 国家互联网信息办公室 中国互联网络信息中心. 中国互联网络发展状况统计报告[EB/OL]. [2017-12-29]. http://cnnic.cn/hlwfzyj/hlwxzbg/hlwtjbg/201701/P020170123364672657408.pdf.
(完)
以上是关于大数据可视化工具比较及应用的主要内容,如果未能解决你的问题,请参考以下文章