9.3.2 信息可视化工具与编程支持
信息可视化是进行各种大数据分析解决的最重要组成部分之一。一旦原始数据流被以图像形式表现时,以此做决策就变得容易很多。为了满足并超越客户的期望,信息可视化工具应该具备如下特征:
·能够处理不同种类型的传入数据;
·能够应用不同种类的过滤器来调整结果;
·能够在分析过程中与数据集进行交互;
·能够连接到其他软件来接收输入数据,或为其他软件提供输入数据;
·能够为用户提供协作选项。
尽管实际上存在着无数专门用于信息可视化的工具,且它们都是既开源又专有的,在这其中还是有一些工具表现比较突出,因为它们提供了上述所有或者很多功能。
1.Jupyter
如果说有什么每个数据科学家都应该使用或必须了解的工具,那非Jupyter Notebooks莫属了(之前也被称为iPython笔记本)。Jupyter Notebooks很强大,功能多,可共享,并且提供了在同一环境中执行数据可视化的功能。
Jupyter Notebooks允许数据科学家创建和共享他们的文档,从代码到全面的报告都可以。它们能帮助数据科学家简化工作流程,实现更高的生产力和更便捷的协作。因此,Jupyter Notebooks成了数据科学家最常用的工具之一。
Jupyter是一个开源项目,具体界面如图9.5所示,通过十多种编程语言实现大数据分析、可视化和软件开发的实时协作。它的界面包含代码输入窗口,并通过运行输入的代码以基于所选择的可视化技术提供视觉可读的图像。

图9.5 Jupyter示意图
但是,以上提到的功能仅仅是冰山一角。Jupyter Notebooks可以在团队中共享,以实现内部协作,并促进团队共同合作进行数据分析。团队可以将Jupyter Notebooks上传到Git Hub或Gitlab,以便能共同合作影响结果。团队可以使用Kubernetes将Jupyter Notebooks包含在Docker容器中,也可以在任何其他使用Jupyter的机器上运行Notebooks。在最初使用Python和R时,Jupyter Notebooks正在积极地引入Java、Go、C#、Ruby等其他编程语言编码的内核。
除此以外,Jupyter还能够与Spark这样的多框架进行交互,这使得对从具有不同输入源的程序收集的大量密集的数据进行数据处理时,Jupyter能够提供一个全能的解决方案。
2.海致BDP
海致BDP为企业提供一站式的大数据分析平台(如图9.6、图9.7所示),帮助企业高效率、低成本地建立数据应用体系,具有灵活、易用、高性能和一站式的特性。

图9.6 海致BDP行业应用示意图
海致BDP帮助企业快速完成多数据整合,建立统一数据口径,支持自助式数据准备(ETL),提供灵活、易用、高效可视化探索式分析能力,帮助企业构建贴合自身业务的数据洞察,并将数据决策快速覆盖各层员工及应用场景。BDP提供灵活、易用、高性能的可视化分析能力,让用户快速洞察市场规律,及时发现业务盲点,同时提供几十种可视化展示效果,可以轻松实现数据清洗、整合、加载,迅速准备好所需的数据,并支持链接不同类型的数据。

图9.7 海致BDP示意图(https://www.daowen.com)
3.Graph Viz
Graph Viz(graph visualization softwate)是AT&T实验室开发的开源工具包,用于绘制DOT语言脚本描述的图形,支持Windows、Linux以及mac OS多个平台。它使用一个特定的DSL(领域特定语言):dot作为脚本语言,并使用布局引擎解析此脚本,提供自动布局算法。Graph Viz提供了丰富的导出格式,如常用的图片格式SVG、PDF等,支持将结果输出整合到文本、网页和应用程序。
Graph Viz的基本图元是节点和边,允许用户在dot脚本中定义节点和边的各自属性,如形状、颜色、填充模式、字体、样式等,并采用合适的布局算法进行布局。Graph Viz提供了众多的布局算法,图9.8和图9.9展示了两种典型的Graph Viz图样。
4.Vis5D
如图9.10所示的Vis5D是美国威斯康星大学空间科学与工程中心开发的可运行于多种工作平台、数值预报模式的产品数据可视化软件。Vis5D具备强大的三维图形处理能力,同时提供全部源代码,允许用户修改和扩充Vis5D的函数和物理量,或编程调用Vis5D提供的API函数,使用户拥有更大的自由度和灵活性。除可以完成传统的气象数据分析功能及二维剖面数据分析外,还支持同步动画显示各个水平(垂直)剖面图,自定义与探针相关的物理量,支持自定义地形图数据、地图数据和自定义格式的网格数据等。

图9.8 Graph Viz示意图1

图9.9 Graph Viz示意图2

图9.10 Vis5D示意图
5.Google Earth
Google Earth是Google公司开发的一款虚拟地球仪软件。Google Earth提供了查看卫星图像、三维建筑、三维数据、地形、街景视图、行星等不同数据的视图,支持计算机、手机、浏览器等多终端浏览应用。
谷歌地球可让用户前往世界上任何地方,以查看卫星图像、地图、地形、3D建筑物,来自外层空间的星系的峡谷海洋。用户可以探索丰富的地理内容,保存用户的参观场所和与其他人分享。
·全球各地的历史影像
如果用户很好奇自己周围一直以来发生了哪些变化,那么Google地球现在就可以带用户回到过去。只需点击一下,即可观察到城郊扩建、冰盖消融以及海岸侵蚀等变迁。
·海洋专家提供的海底和海平面数据
在新的海洋层,用户可以一直沉入海底,查看来自BBC和“国家地理”等合作伙伴的独家内容,并可探究泰坦尼克号等3D沉船的残骸。
·具有音频和视频录制功能的简化游览功能
在Google地球中可进一步标注地标并录制不限形式的旅程。只需打开游览功能,按下录制按钮,用户就可以看到整个世界。用户甚至可以添加背景音乐或画外音,使旅程更具个性。
Google Earth将取代现有的桌面搜索软件。它可以在虚拟世界中如同一只雄鹰在大峡谷中自由飞翔,登陆峡谷顶峰,潜入峡谷深渊。Google Earth采用的3D地图定位技术能够把Google Map上的最新卫星图片推向一个新水平。用户可以在3D地图上搜索特定区域,放大或缩小虚拟图片,然后形成行车指南。此外,Google Earth还精心制作了一个特别选项——鸟瞰旅途,让驾车人士的活力油然而生。Google Earth主要通过访问Keyhole的航天和卫星图片扩展数据库来实现上述功能。该数据库更新后,含有美国宇航局提供的大量地形数据,未来还将覆盖更多的地形,涉及田园、荒地等。