給開發者提供的 35 款 JavaScript 圖形圖表庫
英文原文:35 JavaScript Chart and Graph Libraries for Developers
圖表是數據圖形化的表示,也就是“通過形象的圖表來展示數據,比如條形圖,折線圖,餅圖”。幾乎每個開發或者項目管理團隊都需要圖表或者圖形來 簡化理解,可視化復雜的數據和 web 應用工作流。可視化圖表可以幫助開發者更容易理解復雜d數據,提高生產的效率和 web 應用和項目的可靠性。
JavaScript 圖表和圖形庫就是一個簡單創建圖表和圖形的工具。現在互聯網上有許多五花八門的 JavaScript 圖表和圖形庫,幫助開發者們更好的創建 web 應用的圖表和圖形。
在這篇文章中,我們羅列出排名前 35 的 JavaScript 圖表和圖形庫,適合各種從簡單圖表到復雜圖表的需求。大部分的 JavaScript 圖表和圖形庫都是免費而且開源的,希望大家能在下面的列表中找到適合自己需求的 JavaScript 圖表和圖形庫。Enjoy !!
1. Planetary.js
Planetary.js 是個令人稱奇的創建交互式 web 地球儀的 JavaScript 庫。它使用 D3 和 TopoJSON 來解析和渲染地理信息。Planetary.js 使用基于插件的架構,甚至默認自身就是個插件!這使得 Planetary.js 非常靈活,而且它是允許用戶完全自定義,包括顏色,大小,rotation 等等。更重要的是,用戶可以在任意位置使用自定義的顏色和大小來顯示動畫“pings”;它還支持鼠標拖動和縮放,100% 免費和開源。在線演示
2. Ember Charts
Ember Charts 是個圖表庫,使用 Ember.js 和 d3.js 框架構建的。它包括時間線,條形圖,餅圖和散點圖,非常容易擴展和修改。這些圖表組件都是開箱即用的,在圖表交互和演示方面應用的很好。
3. Chart.js
Chart.js 是個簡單的,面向對象的客戶端圖形庫,用戶可以用 6 中不同的方式來可視化數據。每個方式都是動畫效果的,完全自定義,而且看起來非常好看,即使在 retina 顯示。它使用 HTML5 canvas 元素,支持所有現代瀏覽器,并且支持 IE7/8。
4. Aristochart
Aristochart 是個高度自定義,靈活的折線 canvas 圖表庫,允許用戶集中精力在圖表的審美方面,后臺工作做得非常好。Aristochart 有個持續進步的社區,提供許多不斷增長的主題給用戶選擇。
5. xCharts
xCharts 是一個使用 D3.js 來構建漂亮的可定制的數據驅動的 JavaScript 圖表庫,他使用 HTML,CSS,SVG 實現圖表,xCharts 被設計為一個動態的、流暢的、開放的和可定制化的庫。
6. BonsaiJS
BonsaiJS 是個輕量級的 JavaScript 圖形庫,提供直觀的圖形 API 和 SVG 渲染器。主要特性包括:架構分離的運行器和渲染器;iFrame,Worker 和 Node 運行上下文;形狀,路徑,Assets(音頻,圖像,字體,subMovies),Keyframe 和常規動畫,等等。支持現代化瀏覽器: Safari, Chrome 和 Firefox。
7. Sigma.js
Sigma.js 是個免費開源的 JavaScript 圖形庫,使用 HTML5 canvas 元素。它的設計是特別為了在 web 界面分享交互式網絡 Map 和動態展示網絡數據庫。
8. Morris.js
Morris.js 是個輕量級的 JavaScript 庫,使用 jQuery 和 Rapha&enuml 來繪制時序圖。 Morris.js 生命周期是從代碼驅動 howmanyleft.co.uk 圖表開始的。它支持的瀏覽器有: IE6+, Safari/Chrome/Firefox, iOS 3+ 和 Android 3+。它的公共 API 非常的小,只有一個函數: Morris.Line (選項),包括了許多配置選項。
9. Paper.js
Paper.js 是一個開源的向量圖形腳本框架,基于 HTML5 Canvas 開發。提供清晰的場景圖、DOM 和大量強大的功能用來創建各種向量圖和貝塞爾曲線。
10. AmCharts
AmCharts 是個高級圖表庫,適用于所有數據的可視化。AmCharts 包括: Column, Bar, Line, Area, Step, Step without risers, Smoothed line, Candlestick, OHLC, Pie/Donut, Radar/ Polar, XY/Scatter/Bubble, Bullet, Funnel/Pyramid charts as well as Gauges.
11. Smoothie Charts
Smoothie Charts 是個極小的圖表庫,專為實時流媒體數據設計的。Joe Walnes 想展示 WebSocket 推動的實時的流數據。雖然很多圖表庫允許用戶動態更新數據,但是沒有一個是可以優化源源不斷的流數據。
12. Dygraphs
Dygraphs 是個快速,靈活,開源的 JavaScript 圖表庫。它允許用戶展示和解析密集的數據集。可以高亮需要強調的數據集。可以使用鼠標點擊或者用鼠標拖動來縮放圖表;可以修改數值或者點擊條目來調整平均周期。
13. Grafico
Grafico 是 Grafico 是一個基于 Rapha?l 和 Prototype.js 構建的 JavaScript 圖表庫,提供了各種圖表類型。這些漂亮的圖表,有利于傳遞他們的信息。
14. Highchart JS
Highcharts JS 是一個制作圖表的純 Javascript 類庫,主要特性如下:兼容性:兼容當今所有的瀏覽器,包括 iPhone、IE 和火狐等等;對個人用戶完全免費;純 JS,無 BS;支持大部分的圖表類型:直線圖,曲線圖、區域圖、區域曲線圖、柱狀圖、餅裝圖、散布圖;跨語言:不管是 PHP、Asp.net 還是 Java 都可以使用,它只需要三個文件:一個是 Highcharts 的核心文件 highcharts.js,還有 a canvas emulator for IE 和 Jquery 類庫或者 MooTools 類庫;提示功能:鼠標移動到圖表的某一點上有提示信息;放大功能:選中圖表部分放大,近距離觀察圖表;易用性:無需要特殊的開發技能,只需要設置一下選項 就可以制作適合自己的圖表;時間軸:可以精確到毫秒;在 RunJS 查看在線演示:http://runjs.cn/code/ih5xzoeb
15. Flotr
Flotr 是一個基于 Prototype 開發的 javascript 繪圖工具。支持圖例,鼠標跟蹤,圖片區域選擇,圖片縮放,添加事件鉤子(event hook),通過 CSS 設置樣式等。
16. Flot
Flot 是受 Plotr 和 PlotKit 的啟發,Ole Laursen 基于 jquery 開發了一個圖表繪制(WEB Chart)插件并命名為 flot。 flot 是個純 JavaSript 庫,專注于簡單的使用方式,迷人的外觀和交互式特性。支持的瀏覽器有: Internet Explorer 6+, Chrome, Firefox 2+, Safari 3+ and Opera 9.5+。
17. jFreeChart
JFreeChart 主要用來各種各樣的圖表,這些圖表包括:餅圖、柱狀圖(普通柱狀圖以及堆棧柱狀圖)、線圖、區域圖、分布圖、混合圖、甘特圖以及一些儀表盤等等。JFreeChart 項目歷史悠久,而且有大量的開發者在維護。
18. Plotkit
PlotKit 是一個純 javascript 繪圖工具包。它支持 HTML Canvas 和 Adobe SVG。有著很完整的文檔,方便用戶使用。
19. JS Charts
JS Charts 是個基于 JavaScript 的圖表生成器,不需要任何編碼。JS Charts 非常容易使用,只要用戶使用客戶端腳本(比如,在 web 瀏覽器中執行)。它不需要多余的插件和服務器模塊,只需要下載 JS Charts 的腳本,準備好 XML,JSON 或者 JavaScript 數組數據。
20. Canvasjs
CanvasJS 是個易用的 HTML 5 & JavaScript 圖表庫,基于 Canvas 元素。Graphs 可以通過設備渲染,包括 iPhone,iPad,Android,Windows Phone,Microsoft Surface,Desktops 等等。它允許用戶創建適用于所有設備,不影響 web 應用程序的功能和可維護性的富儀表盤。CanvcasJS 有著非常漂亮的主題和超過傳統的 Flash 和 SVG 圖表 10x 倍以上的速度——生成輕量級,漂亮和響應式的儀表圖。
21. Sparky
Sparky 是個免費的 JavaScript 波形圖庫,依賴于 Rapha?l ,非常容易使用。支持多個圖表類型(折線,條形,area),折線和區域圖可以有多個顏色選擇。
22. Envision.js
Envision.js 是個 JavaScript 庫,用來簡化,快速創建交互式的 HTML5 可視化圖表。它包括兩個圖表類型:時序圖和 Finance ,提供 API 給開發者,用戶可以直接自定義創建圖表。這個庫氏基于 Flotr2 和 HTML5 Canvas 的。它與框架無關,依賴于幾個小的 JavaScript 庫。
23. Dc.js
dc.js 是個 JavaScript 圖表庫,有著原生的 crossfilter, 支持和允許高效展示大型多維數據集(基于 crossfilter 的示例);圖表使用 dc.js 渲染,是使用原生數據驅動,所以能得到用戶的實時反饋;dc.js 最大的亮點在于能提供一個簡單而強大的 JavaScript 庫,能進行數據可視化和分析;不僅支持桌面瀏覽器還支持移動端。
24. ElyCharts
Elycharts 是一個易于使用的,可定制的 JavaScript 圖表繪制組件。這個組件可用于繪制大部分常用的圖表類型包括:line, column, are, bar, pie, sparklines and combinations。它支持多種交互式功能包括:鼠標跟蹤、事件處理、利用各種動畫高亮顯示選擇中的區域,Tooltip,HTML 錨點等。可以動態修改數據,并以漂亮的動畫效果展示圖表中的變化。圖表利用 SVG/VML 技術生成,基于 jQuery + Rapha?l開發。
25. AwesomeChartJS
AwesomeChartJS Awesome Chart JS 是一個 Javascript 生成圖表的類庫,它利用了 HTML5 的 canvas 標簽來創建統計圖表。此類庫就是為了減輕開發者的工作量,使用它只需書寫幾行代碼便能生成漂亮的圖表。
26. Arbor.js
Arbor.js 是一個利用 Web Works 和 jQuery 創建的可視化圖形庫,它為圖形組織和屏幕刷新處理提供了一個高效的、力導向的布局算法。
27. CanvasXpress
canvasXpress 是一個基于 HTML5 canvas 標簽實現的 JavaScript 圖表類庫,它能夠支持線性圖、柱形圖、餅圖和熱點圖等多種常見的圖表類型。它所生成的圖表交互性很強,鼠標放上去時會動態顯示值。除此之外,它也具有相當 高的可定制性,可設置圖表的文字、顏色和要顯示/隱藏的元素等。當然更重要的一點是,雖然它使用了 HTML5,但是依然支持 IE6 瀏覽器。
28. JSXGraph
JSXGraph 是一個支持各種瀏覽器的交互式幾何圖庫繪制。JSXGraph 使用 SVG 和 VML.
29. Rickshaw
Rickshaw 是一個用于繪制時序圖的簡單 jS 庫,基于 Mike Bostock’s delightful D3 庫構建。
30. rGraph
RGraph 是基于 HTML5 canvas 標簽的 HTML5 canvas 圖形庫,支持 20 種不同的可視化類型。使用 canvas 標簽,RGraph 創建“HTML5 圖表”,意味著更快的 web 頁面加載和更少的 web 服務器加載。這能幫助減小 web 頁面的大小,低能耗和更快的瀏覽速度。
31. Fusion Chart
FusionCharts Suite XT 是個專業的 JavaScript 圖表庫,能創建任何類型的圖表。它創建的圖表都是可以進行完全自定義的,標簽,字體,邊界等等,都可以進行修改。它有很強的交互功能,有許多信息提示,可 點擊的 legend 關鍵字,還有 dril-down,縮放/滾動和單擊打印圖表功能。
32. Graph Dracula
Dracula 是用一系列的工具來顯示和布局互動圖表,包括各種相關的算法。它只是純 JavaScript 和 SVG ,并無 Flash,Java,其他插件。它非常容易使用,用戶可以很簡單的自定義任意的元素。
33. Bluff
Bluff 是個 JavaScript 的 Ruby 的 Gruff graphing library 端口。它支持所有 Gruff 的特性,但是有著最小的依賴。用戶只需要運行一個第三方腳本: JS.Class 副本(壓縮后只有 2.6kB ) 和 Google 的 ExCanvas 副本,用來支持 IE 中的 canvas。這兩個腳本在 Bluff 中都有下載。Bluff 自身壓縮后大小大概有 11KB 。
34. Pizza Pie Chart
Pizza Pie Charts 是個響應式餅圖圖表,基于 Adobe Snap SVG 框架,通過 HTML 標記和 CSS 來替代 JavaScript 對象,更容易集成各種先進的技術。
35. jGraph
HTML5 圖表組件,完全支持 l IE 6-8 和觸屏設備。 JGraph 自 2001 年來就一直提供最先進的圖表軟件組件,是第一個流行的 JGraph Swing 庫。然后在 2005 年走在時代的前沿開發 mxGraph。
<span id="shareA4" class="fl"> </span>