大数据可视化软件和工具有哪些?


一般用哪些工具做大数据可视化分析?
虽然你这提问带有广告嫌疑 。但还是当高质量回答做了吧 。现在大数据时代用到工具的地方很多 。也算帮助别人 。在推荐工具之前 。我们要先把数据可视化和 信息可视化分清楚 。狭义上的数据可视化指的是将数据用统计图表方式呈现 。而信息可视化则是将非数字的信息进行可视化 。
我们常常听说的数据可视化大多指狭义的数据可视化以及部分信息可视化 。根据数据类型和性质的差异 。经常分为以下几种类型:
统计数据可视化:用于对统计数据进行展示、分析 。一般都是以数据库表的形式提供 。常见的有 HighCharts、ECharts、G2、Chart.js 、FineBI等等;
关系数据可视化:主要表现为节点和边的关系 。比如流程图、网络图、UML 图、力导图等 。常见的关系可视化类库有 mxGraph、JointJS、GoJS、G6 等;
地理空间数据可视化:常见类库如 Leaflet、Turf、Polymaps 等等;
还有时间序列数据可视化(如 timeline)、文本数据可视化(如 worldcloud)等等;
然后下面再来盘点几个大数据可视化常用的工具:
一、D3
D3.js 是一个基于数据操作文档的 JavaScript 库 。D3 可以将强大的可视化组件和数据驱动的 DOM 操作方法完美结合 。
D3 的优劣:
强大的 SVG 操作能力 。可以非常容易的将数据映射为 SVG 属性
集成了大量数据处理、布局算法和计算图形的工具方法
强大的社区和丰富的 demo
API 太底层 。复用性低 。学习与使用成本高
D3 没有提供封装好的组件 。在复用性、易用性方面不佳 。社区里有很多基于 D3 的可视化组件库:
nvd3.js: 基于 D3 封装了常见的折线图、散点图、饼图 。功能比较简单
dc.js: 除了提供了常见的图表外还提供了一些数据处理能力
c3.js: 一个轻量级的基于状态管理的图表库
D3 有着 Stanford 的血脉渊源 。在学术界享有很高声誉 。灵活强大使得它成为目前领域内使用最广泛的可视化类库 。但偏底层的 API 和数据驱动模式 。使得上手 D3 存在一定门槛 。基于 D3 的工程实现上需要自己考虑和处理更多内容 。如动画、交互、统一样式等 。研发成本较高 。
二、FineBI
简洁明了的数据分析工具 。优点是零代码可视化、可视化图表丰富 。只需要拖拖拽拽就可以完成十分炫酷的可视化效果 。拥有数据整合、可视化数据处理、探索性分析、数据挖掘、可视化分析报告等功能 。更重要的是个人版免费 。
评价:
FineBI做到了自助式分析 。图表类型丰富 。数据分析功能较强大 。钻取 。筛选 。分组等功能都有 。但是对于普通没有IT基础的人来说 。要想真正熟练地掌握finebi 。还是有一定的难度的 。需要花上几天 。但是这个难度相比Excel的VBA学习还是低不少的 。
三、HighCharts
HighCharts 是一个用纯 JavaScript 编写的图表库 。能够简单便捷的在 Web 应用上添加交互性图表 。这是在 Web 上使用最广泛的图表 。企业使用需要购买商业授权 。
HighCharts 的优劣:
【大数据可视化软件和工具有哪些?】使用门槛极低 。兼容性好
使用广泛 。非常成熟
样式比较陈旧、图表难以扩展
商业上使用需要购买版权
这是图表界的 jQuery 。在世界范围内是使用最多最广的一个可视化类库 。但整体图表设计比较陈旧难以扩展 。同时商业公司使用需要按照使用人数购买版权 。比较昂贵 。阿里有购买过 。目前已不推荐使用 。
四、ECharts
ECharts 缩写自 Enterprise Charts 。企业级图表 。开源来自百度数据可视化团队 。是一个纯 Javascript 的图表库 。可以流畅的运行在 PC 和移动设备上 。兼容当前绝大部分浏览器 。底层依赖另一个也是该团队自主研发的轻量级的 Canvas 类库 ZRender 。提供直观 。生动 。可交互 。可高度个性化定制的数据可视化图表 。ECharts 是目前国内唯一一个入选 GitHub 全球可视化榜单的开源项目 。2w+ star 全球排名第三 。社区活跃 。覆盖主流前端框架和 8 种编程语言的扩展 。目前国内市场占有率处于绝对领先地位 。
ECharts 的优劣:
丰富的图表类型 。覆盖主流常规的统计图表
配置项驱动 。三级个性化图表样式管理
移动端优化 。交互和布局适配 。按需打包
深度的交互式数据探索
地理特效(百度迁徙 。百度人气 。公交轨迹等效果)
灵活性上不如 Vega 等基于图形语法的类库
复杂关系型图表比较难定制

推荐阅读