所谓数据可视化是对大型数据库或数据仓库中的数据的可视化,它是可视化技术在非空间数据领域的应用,使人们不再局限于通过关系数据表来观察和分析数据信息,还能以更直观的方式看到数据及其结构关系。
数据可视化技术的基本思想是将数据库中每一个数据项作为单个图元元素表示,大量的数据集构成数据图像,同时将数据的各个属性值以多维数据的形式表示,可以从不同的维度观察数据,从而对数据进行更深入的观察和分析。
为了让开发者更好地使用数据可视化工具,云栖社区组织翻译了GitHub上的 Awesome dataviz ,其几乎囊括了优秀的数据可视化框架,库和软件。涵盖了支持Java,Android,C++,Golang,iOS,Python,R语言和Ruby等编程语言的数据可视化工具,精彩不容错过。
Java 工具集
图表库
C3 – 以 d3 为基础构建的可重用图表库
Chart.js – 带有 canvas 标签的图表
Chartist.js – 具有强大浏览器兼容能力的响应式图表
Dimple – 适用于业务分析的面向对象的 API
Dygraphs – 适用于大型数据集的交互式线性图表库
Echarts – 针对大型数据集的高度定制化交互式图表
Epoch – 可以完美创建的即时图表
Highcharts – 基于SVG和VML呈现的图表库. 免费 (CC BY-NC 可用于非盈利项目)
MetricsGraphics.js – 能够针对时间序列数据进行优化
Morris.js – 非常漂亮的时间序列线状图
NVD3 – 使用 d3.js 实现的可重用性图表库
Peity – 可创建小型内连 svg 图表
Plotly.js – 支持20种图表类型的强大的声明式库
TechanJS – 股票以及金融图表
图形(graphs)图表库
Cola.js – 通过基于约束的优化技术创建图表的工具. 和 d3 以及 svg.js 共同发挥作用
Cytoscape.js – 由 Cytoscape 核心开发人员维护的用于绘制图形的 Java 库.
Linkurious – 一款基于 Sigma.js 的能加快图形可视化和交互式应用的开发速度的工具箱
Sigma.js – 致力于图形绘制的 Java 库
VivaGraph – 针对 Java 的图形绘制库
地图(Maps)
CartoDB – CartoDB 是一款开源工具并且其允许对网页上的地理数据进行存储和可视化
Cesium – WebGL 虚拟地球仪和地图引擎
Leaflet – 对移动端友好的交互式地图Java 库
Leaflet Data Visualization Framework – 使用了 Leaflet 的设计用于简化数据可视化和主题映射的框架
Mapael – 基于 the.js 的能够展示矢量地图的 jQuery 插件
Mapsense.js – 将 d3.js 和瓷砖式覆盖地图结合起来
Modest Maps – 使用 Java,依照 BSD 许可的瓷砖覆盖式为基础展示和交互地图库
d3参见 Awesome D3
dc.jsdc.js 是一个多维图表构建工具,其能够与 crossfilter 完美地配合工作
angular-dc – dc.js 的 AngularJS 指令
dc.leaflet.js – 使用了 Leaflet 地图的 dc.js 图表
ember-dc – dc.js 的 Ember Component Wrappers(组件包装)
杂项Chroma.js – 用于处理色彩的小型库文件
Piecon – 图标上的饼状图绘制工具
Recline.js – 使用纯 Java 和 HTML 的用于构建数据应用的简单而又强大的库
Textures.js – 用于创建 SVG 模式的库
Timeline.js – 创建交互式时间线
Vega – Vega 是一个用于创建,保存和分享交互式可视化数据设计的语法和格式
Vis.js – 一个包括了时间线,网络和图表(2D和3D)的动态可视化库
安卓工具HelloCharts – 兼容安卓 API 8及以上版本的图表库
MPAndroidChart – 一款功能强大而又易于使用的图表库
C++工具Visualization Toolkit (VTK) – 用于3D图形和图像处理和可视化的开源库
Go语言工具Charts for Go – 基于 Go 的基础图表. 其能够对 ASCII、 SVG 和图像进行渲染
svgo – 针对 SVG 的 Go 语言库
iOS工具JBChartView – 同时支持线性和条形图的图表库
PNChart – 使用了 Piner 和 CoinsMan 的简单并且美丽的图表
ios-charts – MPAndroidChar 的 iOS 端口. 其可以使用非常简单的代码为两个平台创建图表
Python工具bokeh – 用于 Python 的交互式网页绘图工具
ggplot – 与ggplot2 面向R语言的 API相同
glumpy – OpenGL 科学可视化库
matplotlib – 2D 绘图库
pygal – 一个动态 SVG 图表库
PyQtGraph – 交互式和实时的 2D/3D/图像绘制以及科学/工程工具
seaborn – 一个能够制作极具吸引力的和展现翔实统计信息数据的图表库
toyplot – 目标为大型数据图表的小型 Python 数据图表绘制工具
Vincent – 面向 Vega 翻译器的 Python 工具
VisPy – 基于 OpenGL 的高效科学可视化工具
mpld3 – Matplotlib Graphics的 D3 渲染工具
R工具ggplot2 – 一个基于图形语法的绘图系统
lattice – R语言格子图形
plotly – 交互式图表(向 ggplot2 的输出中添加了交互性), 统计图和简单网络图
rbokeh – 针对 Bokeh 的R语言接口
rgl – 使用了 OpenGL 的3D 可视化
shiny – 用于创建交互式应用和可视化的框架
visNetwork – 交互式网络可视化
Ruby工具Chartkick – 使用 Ruby 的单线创建图表的工具
其他工具不与特定平台或语言绑定的工具
Charted – 一个能够从任何数据文件中创建自动化,可分享的图表的工具
Gephi – 一个用于可视化和制作大型图表的开源平台
Lightning – 一个提供以API为基础的方式获取可再生,网络为基础的交互式可视化图表的数据可视化服务
RAW – 由 CSV 和 Excel 文件创建的网络可视化工具
Spark – 命令解释程序(shell)走势图. 其包含多种实现语言
Periscope – 直接由SQL查询语句创建图表
这些工具选择适合自己的,助你事半功倍!