用于展示图表的50种JavaScript库

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

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

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

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

  • 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库有:PlotKitMilkChartmoochartmoowheeltable2chartCanvas 3D GraphTufteGraphArborJSTimePlotgRaphaelICOElychartsZingChartRGraphDojo ChartingBluffcanvasXpressccchartJITJSXGraphSmoothie ChartsYUI ChartsamchartsEmprise JavaScript ChartsFusionChartsJavaScript Diagram BuilderjGraphSencha Touch ChartsStyle ChartAwesomeChartJS等,都各有千秋,若是你对这些库感兴趣的话,能够访问相应的连接或者阅读原文python

  这个列表对于想要利用JavaScript技术建立图表展示数据的开发者来讲,很是具备参考意义,你能够从中选择最适合的库,从而高效、高质量地完成任务。jquery

  来源:InfoQ投稿,原文连接git

 

出处:https://www.williamlong.info/archives/3372.htmlgithub