写点什么

用于展现图表的 50 种 JavaScript 库

  • 2013-01-23
  • 本文字数:1778 字

    阅读完需:约 6 分钟

在很多项目中都会有在前端展现数据图表的需求,而在开发过程中,开发者往往会使用一些 JavaScript 库,从而更有效地达到想要的目标。最近, TechSlide 上的一篇文章总结了 50 种用于展现图表的 JavaScript 库,并对每种库做了简要的说明。这对于想要选择合适 JavaScript 库的开发者很有参考意义。

文章作者首推的库是 D3 ,他说到:

它非常让人惊叹,我很喜欢它的简洁性。它的文档非常完备,源代码托管在 GitHub 上,而且不断会添加新的示例。有一种叫做 Tributary 的创建 D3 原型的工具,其中有很多非常棒的示例。这个库非常好,以至于 xcharts、nvd3、Rickshaw、Cubism.js、dc.js、xkcd 都是基于它构建的。如果你想要做出优秀的自定义数据可视化效果,那么 D3 可能是你最佳选择,或者对于更简单的图,你可以选择上面所提到的基于 D3 的库。最后,我强烈推荐阅读 Scott Murray 关于 D3 的免费书《 Interactive Data Visualization for the Web 》和《 Dashing D3 tutorials 》。

接下来,他列举并简要说明了其它用于展现数据、制作表格和图表的 JavaScript 库,列在前 20 位的如下:

  • HighCharts ——它非常强大,你可以在 JSFiddle 中查看和编辑大量示例。它不免费,但拥有很多客户(IBM、NASA、MasterCard 等)。它还向下兼容 IE 8。
  • jqPlot ——如果你已经在使用 jQuery,不想为 HighCharts 付费,而且情况很简单,不需要 D3 那样复杂的库,那么 jqPlot 是很好的选择。
  • dygraphs ——一种开源的 JavaScript 库,可以做出可交互、可缩放的时间线图表。对于大数据集合非常适用。
  • Protovis ——和 D3 出自同一支团队之手,是一种免费的开源库。你可以查看这个 stackoveflow 页面来了解 D3 与其的区别。
  • Flot Charts ——与 jqPlot 一样,Flot 是一种针对 jQuery 的纯 JavaScript 库,专注于简单的用法、引人注目的外观和交互特性。
  • Google Chart Tools ——强大、免费、易于使用。内容丰富,从最简单的线状图到负责的层级树状图都有,在展示页面中提供了大量设计良好的图表类型。
  • dc.js ——基于 D3 的 JavaScript 图表库,拥有本地跨过滤器(crossfilter)的支持,并让你可以高效率地浏览大型多维数据集。
  • xcharts ——基于 D3 用于构建自定义图表的库。
  • nvd3 ——让你可以构建可重用的图表和图表组件,同时具有 d3.js 的强大功能。
  • rickshaw ——用于创建可交互时间线图表的 JavaScript 工具。
  • Cubism.js ——用于可视化时间线的 D3 插件。使用了 Cubism 构建更好的实时仪表盘,可以从 Graphite、Cube 和其他源拉取数据。
  • xkcd ——让你可以使用 D3 在 JavaScript 中做出 XKCD 样式的图表。
  • jQuery Sparklines ——一种 jQuery 插件,可以直接在浏览器中创建小型的内嵌图表。
  • peity ——一种简单的 jQuery 插件,可以把元素的内容转换成简单的饼图、线图和柱状图。
  • BonsaiJS ——一种轻量级的图形库,拥有直观的图形 API 和 SVG 渲染器。
  • Flotr ——为 Prototype.js 所用的 JavaScript 图表库。它拥有很多特性,像对负数值的支持、鼠标跟踪、选定支持、缩放支持、事件挂钩、CSS 样式支持、在画布(canvas)中包含文字、旋转的标签、渐变颜色、图形标题和子标题、电子表格、CSV 数据下载等等。
  • ProtoChart ——物如其名,ProtoChart 让你可以使用 JavaScript 和 Prototype 创建很漂亮的图表。它是一种开源库。
  • Flotr2 ——HumbleSoftware 当前正在做的项目,让你可以使用 Canvas 和 JavaScript 创建图表。
  • jQuery-Visualize ——HTML 的 table 元素驱动的 HTML5 canvas 图表。也是针对 jQuery 的图表插件。
  • JS Charts ——基于 JavaScript 的图表生成器,只需要很少甚至不需要编码。免费版会有水印,可以通过付费去掉。
  • ……

文章中还列举的 JavaScript 库有: PlotKit MilkChart moochart moowheel table2chart Canvas 3D Graph TufteGraph ArborJS TimePlot gRaphael ICO Elycharts ZingChart RGraph Dojo Charting Bluff canvasXpress ccchart JIT JSXGraph Smoothie Charts YUI Charts amcharts Emprise JavaScript Charts FusionCharts JavaScript Diagram Builder jGraph Sencha Touch Charts Style Chart AwesomeChartJS 等,都各有千秋,如果你对这些库感兴趣的话,可以访问相应的链接或者阅读原文

这个列表对于想要利用 JavaScript 技术创建图表展现数据的开发者来说,非常具有参考意义,你可以从中选择最适合的库,从而高效、高质量地完成任务。

2013-01-23 02:5723094
用户头像

发布了 340 篇内容, 共 132.4 次阅读, 收获喜欢 13 次。

关注

评论

发布
暂无评论
发现更多内容

2022第八届华为软件精英挑战赛全球总决赛圆满落幕,冠军奖金20万!

科技热闻

满满干货!手把手教你实现基于eTS的HarmonyOS分布式计算器

HarmonyOS开发者

HarmonyOS ETS

KunlunBase 查询优化(一)

KunlunBase昆仑数据库

MySQL 数据库 国产数据库

KunlunBase 查询优化(三)排序下推

KunlunBase昆仑数据库

国产数据库

昆仑数据库可定制的数据分片方案

KunlunBase昆仑数据库

国产数据库

小程序转APP,小团队也能实现数字化生态闭环

Speedoooo

APP开发 跨端开发 小程序容器 小程序转app 跨端运行

数据库系统最佳实践系列 --- 使用 prepared statement

KunlunBase昆仑数据库

国产数据库

netty系列之:epoll传输协议详解

程序那些事

Java Netty 程序那些事 5月月更

【LeetCode】调整数组顺序使奇数位于偶数前面Java题解

Albert

LeetCode 5月月更

昆仑分布式数据库系统简介 之 SQL 标准兼容性和日常维护工作

KunlunBase昆仑数据库

国产数据库

文档管理:企业进步的重要因素

小炮

文档管理

烧录OpenHarmony 3.2(尝鲜版)步骤

离北况归

OpenHarmony OpenHarmony3.2

微擎同步粉丝不显示头像和昵称?

智伍应用

微擎 php开源

EMQX+阿里云Tablestore多场景一站式IoT数据解决方案正式发布

EMQ映云科技

阿里云 物联网 一站式平台 emqx 5月月更

三分钟让你了解 vue 中的父子通讯

CRMEB

手绘图解java类加载原理

华为云开发者联盟

Java 类加载 元数据 类静态

火山引擎A/B测试私有化实践

字节跳动数据平台

实验 火山引擎 私有化部署 ab测试

成本节省 50%,10 人团队使用函数计算开发 wolai 在线文档应用

阿里巴巴中间件

阿里云 中间件 函数计算

2022年中国消费金融数字化发展分析

易观分析

消费金融

MySQL-8.0 Group Replication 研究与改造汇总

KunlunBase昆仑数据库

国产数据库 MySQL 数据库

昆仑分布式数据库Sequence功能及其实现机制

KunlunBase昆仑数据库

国产数据库

KunlunBase 查询优化(二)Project 和 Filter 下推

KunlunBase昆仑数据库

国产数据库

什么是显卡?GPU服务器到底有什么作用?

Finovy Cloud

gpu GPU服务器

《阿里云代码安全白皮书》5个维度应对3类代码安全问题

阿里云云效

云计算 阿里云 代码管理 代码托管 代码安全

谈谈技术能力

阿里巴巴中间件

阿里云 程序员 中间件 技术思考

SaaS应用:企业数字化转型性价比最高的方式

小炮

leetcode 451. Sort Characters By Frequency 根据字符出现频率排序

okokabcd

LeetCode 排序

数据库堡垒机品牌有哪些?买哪家划算?咨询电话多少?

行云管家

网络安全 信息安全 数据安全 堡垒机

【二级等保】二级等保怎么做?价格怎么样?贵吗?

行云管家

运维 网络安全 堡垒机 运维审计

深入解读SQL的聚集函数

华为云开发者联盟

sql GaussDB(DWS) 聚集操作 主键列

关于加密通道规范,你真正用的是TLS,而非SSL

华为云开发者联盟

TLS 加密 ssl 加密通道 CA系统

用于展现图表的50种JavaScript库_JavaScript_侯伯薇_InfoQ精选文章