我们诠释数据的方式和数据本身之间存在着巨大的鸿沟。尤其是当我们唯一的选择是盯着表格中一列列不知所云的数字时。这可能是最无聊的一种格式了。

没有哪个网页开发者会喜欢电子表格。好消息是,现在我们有了许多更加优雅的方式来呈现数据,再也没有必要使用静态的 Excel 图表了。

在为你的项目选择合适的绘图工具时,要考虑到许多事情。本文将为你分析适合网页开发者的 12 个最好的工具,让你不再花费大把时间跟数据做斗争,而是开始轻松地绘制漂亮的图表。虽然本文推荐的工具是面向网页开发者的,但其中一些并不需要会写代码就能使用。许多工具都有着丰富的交互式例子,即使是新手也能轻松地通过改动代码来创建自定义图表。

1. Google Charts

文档和帮助信息丰富的 Google Charts 对于刚刚入门 JavaScript 绘图的人来说是极佳的选择。它的文档里到处都是带注释的代码和逐步的讲解,可以直接用来把 HTML5 / SVG 图标嵌入到你的网页中。

如果你需要更进阶的自定义功能或是 Google 原始提供的 18 类以外的图表,下面会介绍一些有着更多类别和特性的选择。

适合人群:追求灵活性和良好文档的严肃开发者。

2. MetricsGraphics

MetricsGraphics 是一个在 D3.js 的基础上专为可视化时间序列数据而开发的绘图库。虽然它只支持线图、散点图、柱状图、直方图和数据表格,但它在这几类图表上的表现非常强。

跟 Google Charts 一样(MetricsGraphics 是 Mozilla 的产品),丰富的文档和例子使得它很容易上手。比如这个非常有趣的关于 UFO 目击事件的交互式例子。

同时它也是一个非常简易和轻量级的选择。

适合人群:追求快速美观同时又不需要写一堆杂乱代码的开发者。

3. FusionCharts

FusionCharts 支持 vanilla JavaScript、jQuery、Angular 等一系列高人气的库和框架。它内置 90 多种图表和超过 1000 种地图,相比 Google Charts 和 MetricsGraphics 要完整得多。你可以在这里查看它所支持的全部图表类型。

考虑到应用或是网站的拓展性,如果你选择了一个功能不完整的绘图库,这就有可能在将来发展成一个问题。而像 Microsoft、Google 和 IBM 这样的公司都在使用 FusionCharts,这说明它是一个能满足企业级拓展性需求的工具。

适合人群:需要各种不同种类的易自定义图表的开发者。

4. Epoch

Epoch 是一个基于 d3.js 开发的工具,它使得开发者可以方便地在他们的应用或是网站上部署实时图表。它的文档整洁,完全免费并且开源,这使得它对于不想花钱购买重量级解决方案的人来说是一个很好的选择。

对普通数据和实时数据,Epoch 都支持 5 种图表类型。这个数量并不能与 FusionCharts 或是 Highcharts 这种特性完整的产品对抗,但它所专长的是以简单和友好的方式呈现实时数据。

适合人群:需要简单灵活的实时数据呈现方案的开发者。

5. ECharts

百度的 ECharts 是一个很棒的工具,它支持在绘制完数据后再对其进行操作。这个被称为 Drag-Recalculate 的特性使得用户可以在图表之间拖动一部分的数据并得到实时的反馈。同时,ECharts 是专为绘制大量数据设计的。它可以瞬间在二维平面上绘制出 20 万个点,并用专为 ECharts 开发的轻量级 Canvas 库 ZRender 使数据动起来。

你可以在这里对上图进行操作,来体验 ECharts 所提供的特性。

适合人群:想尽量避免写代码并有实时数据操作需求的开发者。

6. D3.js

虽然并不是对用户最友好的工具,但 d3.js 在 JavaScript 绘图界的重要性是不可小觑的。许多其他的库都是基于它所开发,因为它提供了你所能想到的所有功能。它支持 HTML、SVG 和 CSS,并且有着海量的用户贡献内容来弥补它缺乏自定义内容的劣势。

由于 D3.js 的学习曲线比较陡峭,你可以学习优达学城(Udacity)上的《Data Visualization and D3.js》,这门课能为你打下坚实的基础。

适合人群:不怕写代码的硬核绘图专家。

7. Sigma

跟上面已经提到过的工具相比,Sigma 有着自己独特的定位,那就是图模型的绘制。它基于 Canvas 和 WebGL 开发并提供了公开的 API。所以你可以在 GitHub 上找到社区贡献的许多插件。举例来说,你可以用 Sigma.js 画出这样的图:

Sigma 同时也是响应式的,并支持触屏。开发者很容易添加新的功能以及精细地控制边和顶点的规格。

适合人群:需要专为绘制图模型设计的强大工具的开发者。

8. Highcharts

人气极高的 Highcharts 可以在不依赖插件的情况下绘制交互式的图表。它高灵活性的绘图 API 也被 Nokia、Twitter、Visa 和 Facebook 这样的公司所青睐。

Highcharts 对于非商业使用是免费的,而商业许可的价格是一份 590 美元(附带技术支持)。

这是一个用它绘制的例子:

适合人群:需要在技术支持的帮助下绘制各种复杂的图表的开发者。

9. dc.js

dc.js 是一个开源的 JavaScript 绘图库。它非常适合用来创建交互式的仪表盘(Dashboard)。图表之间是有联系的,所以当你与其中一个部分进行交互时,其他部分都会做出实时的反馈。这是一个例子:

除了一些在线课程以外,你可以通过各种例子来学习使用这个库。等你照着文档动手一遍以后就有能力创建自己的图表了。

虽然 dc.js 并没有像 ECharts 或是 Google Charts 那样丰富的功能,但它在自己的卖点——易于呈现和探索巨量的维度数据集上做的非常好。

适合人群:需要为关系型图表创建一个仪表盘的开发者。

10. dygraphs

由 Google 开发的 dygraphs 绝对是绘图工具中的明星。到现在 Google Correlate 还在使用它(当然,在设计上经过了一些调整)。它可以被用于绘图密集的项目,因为它能在不影响性能的情况下轻松地绘制几百万个数据点,这在很大程度上弥补了它那过于朴素的审美设计。

从一开始作为 Google 的一个内部项目到最后公开发布,dygraphs 一直有着活跃的社区支持。同时它也在 GitHub 上开源。

适合人群:需要有着活跃支持的专为绘制海量数据集设计的工具的开发者

11. Vega

Vega 是一个基于 d3.js 的用于创建、分享和保存可视化图标的库。它由许多部件组成,其中一些能够在不需要写代码的前提下达到与 d3 竞争的水平。Vega 能够把 JSON 数据转换成 SVG 或 HTML5 图表。虽然这没什么了不起的,但它把这一步做的很踏实。

因为使用 Vega 不需要写任何代码(只要会编辑 JSON 文件即可),它是一个很好的 d3 替代品,能在降低使用复杂度的同时保留 d3 的特性。

适合人群:需要 d3 强大的特性又不希望从头学起的开发者。

12. NVD3

最后介绍的工具也是基于 d3.js 的。作为绘图界的佼佼者,NVD3 是由一系列部件组成的,允许开发者创建可重用的图标。你可以在它的网站上找到许多 demo 和对应的代码。这也是上手 NVD3 的最佳方式。

你可以看到,NVD3 的审美风格要比 d3.js 更为精致一点。

它支持 11 种图表类型,包括区域图、线图、柱状图、气泡图、饼状图和散点图。同时也支持所有现代浏览器以及 IE 10 以后的版本。

适合人群:熟悉 d3 并想要可重用图表的开发者。

▲ 本文为优达学城(Udacity)特邀内容,作者 Rohit Boggarapu。文章内容仅代表作者个人观点。Udacity 和 Facebook、MongoDB 联合推出的升级版“数据分析师”认证项目现已开放加入!

优达twitter 清理_优达资源 | 12个数据可视化工具,人人都能做出超炫图表相关推荐

  1. 优达twitter 清理_优达学城的学习感想及优惠

    2017年12月因一次偶然的机会,看到优达学城的课程.当时通过优惠码:0C637434报名能有优惠(你们也可以使用拿优惠哦).就决定参加了优达学成的数据分析入门课程. 数据分析入门课程学习的内容有四大 ...

  2. 优达twitter 清理_云吸狗吸出的啊哈时刻

    --一颗吃饱没事干强行撸猫老被咬的卤蛋对搞笑萌宠推特WeRateDogs的过度分析 仅以此文献给高冷狂傲拽炸天见鸡胸肉一秒变乖的蛋蛋: 蛋蛋的帅照 (一脸怨念地)如果不是因为我每次去撸你你都狠狠咬我的 ...

  3. 优达twitter 清理_Udacity优达学城数据分析视频

    Udacity优达学城数据分析视频下载!Udacity优达学城数据分析视频是udacity优达学城数据分析学习笔记!udacity优达学城纳米学位资料视频是机器学习&深度学习视频教程! Uda ...

  4. mysql 工具 国产_推荐一款国产化比较好用的数据可视化工具(BI工具)

    当人们一提到数据可视化这个词儿呢,很多人大脑会直接闪过两个词. 第一个呢,就是「酷」,非常酷,酷酷的,炫酷......反正已没办法形容.像下面这样的: 好了,炫酷完事了,那另一个关键词就是,就是「难度 ...

  5. 铁拳nat映射_铁拳如何重塑我的数据可视化设计流程

    铁拳nat映射 It's been a full year since I've become an independent data visualization designer. When I f ...

  6. 数据可视化工具_数据可视化

    数据可视化工具 Visualizations are a great way to show the story that data wants to tell. However, not all v ...

  7. c# 数据可视化_#OpenVisConf上的22位数据可视化从业者的10点收获

    c# 数据可视化 by Siena Duplan 通过锡耶纳·杜普兰(Siena Duplan) #OpenVisConf上的22位数据可视化从业者的10点收获 (10 Takeaways from ...

  8. python 3d大数据可视化软件_十大顶级大数据可视化工具推荐

    要使数据分析真正有价值和有洞察力,就需要高质量的可视化工具.市场上有很多产品,特点和价格各不相同,本文列出了一些广泛认可的工具.其实企业如何选择一个合适的可视化工具,并不是一件容易的事情,需要仔细的考 ...

  9. 数据可视化 工具_卓越中心和数据可视化工具2020中的组织中的数据聚合

    数据可视化 工具 人工智能 (ARTIFICIAL INTELLIGENCE) Data consumption is rising steadily in 2020 with estimates s ...

最新文章

  1. 统计学习方法笔记 -- Boosting方法
  2. Jlink无法识别CPU/lpc2103/lpc2131
  3. 00_设计模式6大原则
  4. 【已解决】“The import java.sql.Connection conflicts with a type defined in the same file“
  5. OpenStack(三)——Glance组件
  6. 机房管理系列之杀毒服务器维护
  7. 第二季2:/package/mpp/sample的总体分析
  8. ​如何成为一个更好的 React 开发者?
  9. final、finally和finalize;throw和throws;collection和collections;==和equals;Statement和PrepareStatement...
  10. ajax鼠标滚动请求 或 手机往下拉请求
  11. 华为交换机接口允许vlan通过_VLAN工作原理之TRUNK:控制允许通过的VLAN(Allowed List)...
  12. MAMP Pro for Mac(PHP/MySQL开发环境)v6.6
  13. java 中== equals hashcode源码剖析
  14. c语言oj中的wa是什么意思,杭电oj1002题一直是WA ,然而格式什么的都对啊?求教OAO...
  15. 帝国cms 自定义页面 php,帝国CMS增加自定义页面模板修改教程
  16. c语言中断函数作用,进一步理解中断函数
  17. python twisted安装_图文详解python之twisted模块安装
  18. 汇编:裴波那契数列前50项
  19. 分享15款为jQuery Mobile定制的插件
  20. 【2】Kubernetes集群安装

热门文章

  1. 数控g71编程实例带图_数控车G71有凹槽复合循环编程实例
  2. mysql intersect用法格式_我们如何模拟MySQL INTERSECT查询?
  3. 【科普】cmd是什么?
  4. 我的世界最新服务器自动打怪,我的世界服务器自动打怪脚本刀剑乱舞图
  5. 如何在公司建立好一个较为完整的固定资产设备台账
  6. 自定义控件实现(淘宝头条/京东快报)垂直循环滚动栏目
  7. org.springframework.web.HttpMediaTypeNotSupportedException Content type ‘ap
  8. 移动增值业务相关知识
  9. linux socket errno 4,解决socket.error: [Errno 98] Address already in use问题
  10. 晶体谐振器和晶体振荡器有什么区别?