原文javascript
在大數據時代,不少時候咱們須要在網頁中顯示數據統計報表,從而能很直觀地瞭解數據的走向,開發人員不少時候須要使用圖表來表現一些數據。隨着Web技術的發展,從傳統只能依靠於flash、IE的vml,各個瀏覽器尚不統一的svg,到現在規範統一的canvas、svg爲表明的html5技術,表現點、線、面要素的技術已經愈來愈規範成熟。我把前端數據可視化分爲了五種:
1.圖表
2.圖譜
3.地圖
4.關係圖
5.立體圖
我將按照順序介紹62款前端可視化插件,下面就分享下34款圖表插件:
1.amcharts
url: http://www.amcharts.com/
browser:IE6+、chrome、safari、firefox、opear
resume:amCharts是一種先進的圖表庫,將適合任何數據可視化的須要。圖表解決方案包括柱、欄、線、區域,一步,一步沒有冒口,平滑線,燭臺,OHLC,餡餅/甜甜圈,雷達/極地,XY /分散/泡沫,子彈,漏斗/金字塔圖以及指標。
2.awesomechartjs
url:http://cyberpython.github.io/AwesomeChartJS/
github:https://github.com/cyberpython/AwesomeChartJS
browser:現代瀏覽器
resume:AwesomeChartJS是一個簡單的Javascript庫,可用於建立圖表基於HTML 5畫布元素。
3.axiis
url:http://www.axiis.org/
browser:官方未說明
resume:Axiis框架是一個開源的數據可視化爲初學者和專家開發人員設計的。
4.bonsaijs
url:http://bonsaijs.org/
github:https://github.com/uxebu/bonsai
browser:IE9+、chrome20+、safari5+、firefox18+、opear12+
resume:用於建立圖形和動畫的js庫
5.canvasjs
url:http://canvasjs.com
browser:官方未說明
resume:一個使用HTML五、JavaScript建立圖表在畫布上,圖表包括幾個好看的主題和10倍的速度比傳統的基於Flash / SVG庫——致使輕量級的,美麗的和響應指示板。收費
6.canvasxpress
url:http://canvasxpress.org/
browser:Firefox 1.5+, Opera 9+, Safari 3.x+, Chrome 1.0+, IE 6+
resume:CanvasXpress是一個獨立的Javascript編寫的圖形庫,支持全部主流瀏覽器中計算機和移動設備。
7.chartist
url:http://gionkunz.github.io/chartist-js/
github:https://github.com/gionkunz/chartist-js
browser:Firefox, Chrome, Safari, Opera, IE9+
resume:繪製多種圖形的庫
8.chartjs
url:http://www.chartjs.org/
github:https://github.com/nnnick/Chart.js
browser:IE9+、chrome、safari、firefox、opear、部分支持IE7/8
resume:chartjs是一個能夠繪製多種圖表的庫,使用了html5的canvas技術
9.chartkick
url:http://ankane.github.io/chartkick/
github:https://github.com/ankane/chartkick
browser:IE6+、chrome、safari、firefox、opear
resume:chartkick是一個依賴於ruby的繪製圖表的js庫,在Python中也可使用
10.DataWrapper
url:https://datawrapper.de/
github:https://github.com/datawrapper/datawrapper
browser:支持大部分瀏覽器
resume:Datawrapper徹底免費,開源。您可使用他們的免費主機服務,或者安裝在您本身的服務器上。Datawrapper用PHP編寫,很是易於安裝、修改和拓展。能夠繪製。可是DataWrapper是生成圖表後嵌入到站點的。
11.dataset
url:http://misoproject.com/dataset/
github:https://github.com/misoproject/dataset
browser:官方未說明
resume:dataset是一個JavaScript客戶端數據轉換和管理庫。數據集管理客戶端數據簡單處理加載、解析、排序、查詢和操縱來自各類數據源的數據。
12.dc
url:http://dc-js.github.io/dc.js/
github:https://github.com/dc-js/dc.js
browser:官方未說明
resume:專門爲探索大型、多維數據集而進行優化的庫
13.dygraphs
url:http://dygraphs.com/
browser:IE8+、chrome、safari、firefox、opear
resume:dygraphs是一種快速、靈活的開源JavaScript庫圖表。
14.echart
url:http://echarts.baidu.com/index.html
github:https://github.com/ecomfe/echarts
browser:IE9+、chrome、safari、firefox、opear
resume:基於Canvas,純Javascript圖表庫,提供直觀,生動,可交互,可個性化定製的數據可視化圖表。創新的拖拽重計算、數據視圖、值域漫遊等特性大大加強了用戶體驗,賦予了用戶對數據進行挖掘、整合的能力。
15.flotr2
url:http://www.humblesoftware.com/flotr2/
github:https://github.com/HumbleSoftware/Flotr2
browser:FF, Chrome, IE6+, Android, iOS
resume:Flotr2是HTML5畫圖表和圖形庫。能夠繪製線圖、條圖、蠟狀圖、餅圖、氣泡圖
16.Flot
url:http://www.flotcharts.org/
browser:Internet Explorer 6+, Chrome, Firefox 2+, Safari 3+ and Opera 9.5+
resume:一個基於jQuery的繪圖庫,能夠繪製折線、散點、條形、餅狀圖
17.fusioncharts
url:http://www.fusioncharts.com/
browser:IE6+、chrome、safari、firefox、opear
resume:一個專門用來繪製圖表的庫,能夠繪製90多種圖表,可是收費
18.graphael
url:http://g.raphaeljs.com/
browser:Firefox 3.0+, Safari 3.0+, Opera 9.5+ and Internet Explorer 6.0+html
resume:能夠繪製各類圖表的插件,並且很是簡單靈活前端
19.highchart
url:http://www.highcharts.com/
github:https://github.com/highslide-software/highcharts.com/
browser:支持各類設備,ie6+
resume:在高版本瀏覽器中使用SVG,而在舊版本IE(包括IE6及更新版本)中使用後備的VML。有本身的團隊負責,可是隻對非商業用途免費,能夠繪製 line, spline, area, areaspline, column, bar, pie, scatter, angular gauges, arearange, areasplinerange, columnrange, bubble, box plot, error bars, funnel, waterfall and polar chart types
html5
20.humble Finance
url:http://www.humblesoftware.com/finance/index
browser:FireFox, Safari, Chromium, or IE6+
resume:HumbleFinance是一個HTML5數據可視化工具相似於Flash工具,徹底是用JavaScript編寫的工具使用原型和Flotr庫。
java
21.ichartjs
url:http://www.ichartjs.com/
github:https://github.com/wanghetommy/ichartjs
browser:IE9+、chrome、safari、firefox、opear
resume:ichartjs 是一款基於HTML5的圖形庫。使用純javascript語言, 利用HTML5的canvas標籤繪製各式圖形。 ichartjs致力於爲您的應用提供簡單、直觀、可交互的體驗級圖表組件。ichartjs目前支持餅圖、環形圖、折線圖、面積圖、柱形圖、條形圖。
22.icharts
url:http://www.icharts.net/
browser:官方未說明
resume:iCharts免費版本提供了一些基本的交互式圖表樣式,若是更使用高級的樣式,則須要購買高級版本。
23.JavaScript InfoVis Toolkit
url:http://philogb.github.io/jit/
github:https://github.com/philogb/jit
browser:官方未給出具體版本
resume:JavaScript InfoVis Toolkit能夠動態繪製各類圖形,提供了一些預設的樣式可用於展現不一樣的數據
24.jqplot
url:http://www.jqplot.com/
browser:IE 7+, Firefox, Safari, and Opera
resume:基於jQuery的繪圖插件,能夠繪製折線、條形、散點、餅狀圖
25.jscharts
url:http://www.jscharts.com/
browser:Firefox 1.5 +,Chrome 10 +,Internet Explorer 8 +,Safari 3.1 +,Opera 9 +
resume:jscharts是一個基於JavaScript的圖表生成器,須要不多或根本沒有編碼。jscharts繪製圖表是一個簡單和容易的任務,由於您只須要使用客戶端腳本(即由web瀏覽器)。不須要額外的插件或服務器模塊。就包括咱們的腳本,準備你的圖表數據XML、JSON或JavaScript數組和你的表已經準備好了!容許您建立圖柱狀圖,餅圖或簡單的線條圖。收費可是有免費版本。
26.kendo-ui
url:http://www.telerik.com/kendo-ui
github:https://github.com/telerik/kendo-ui-core
browser:現代瀏覽器
resume:http://www.cnblogs.com/xiyangbaixue/p/3951297.html
27.nvd3
url:http://nvd3.org/
github:https://github.com/novus/nvd3
browser:Chrome,Firefox, Opera, Safari and Internet Explorer 10
resume:d3圖表庫
28.pizza-pie-charts
url:http://zurb.com/playground/pizza-pie-charts
github:https://github.com/zurb/pizza
browser:官方未說明
resume:主要用來生成餅狀圖的庫
29.protovis
url:http://mbostock.github.io/protovis/
github:https://github.com/mbostock/protovis
browser:現代瀏覽器
resume:Protovis組成自定義視圖的數據用簡單的標誌如酒吧和點。與低級圖形庫,迅速成爲可視化乏味,Protovis定義是經過編碼數據的動態屬性,容許繼承,尺度和layoutsto簡化施工。
30.Peity
url:http://benpickles.github.io/peity/
browser:Chrome, Firefox, IE9+, Opera, Safari
resume:能夠繪製多種圖形,可是都是很小的圖形,與jQuery Sparklines類似
31.rgraph
url:http://www.rgraph.net/
browser:現代瀏覽器
resume:RGraph是一個基於HTML5的開放web圖表和圖表庫。RGraph建立這些圖表在web瀏覽器使用JavaScript,這意味着更快的頁面和web服務器負載,致使較小的頁面大小和更快的網站。
32.webfx
url:http://webfx.eae.net/
browser:Firefox 1.5, Opera 9 and Internet Explorer 6
resume:支持多種圖表的庫
33.xcharts
url:http://tenxer.github.io/xcharts/
github:https://github.com/tenXer/xcharts/
browser:現代瀏覽器
resume:xCharts美麗是一個JavaScript庫,用於構建和自定義數據驅動的web使用D3.js圖表可視化。使用HTML、CSS和SVG,xCharts被設計成動態、流體、集成和定製。
34.zingchart
url:http://www.zingchart.com/
browser:官方未聲明
resume:ZingChart創造驚人的可視化提供了靈活性和資源。提供超過100個圖表類型,獨特的特性,如縮放和交互式。
小結:
每款插件各有千秋,根據項目需求挑選不一樣插件。其中比較普遍使用的如echart(百度產品)、highchart等,下面我將分享圖譜插件。
9款圖譜插件:
1.crossfilter
url:http://square.github.io/crossfilter/
github:https://github.com/square/crossfilter
browser:官方未說明
resume:一個能夠操做大型、多元數據集的庫,幫助數據分析。
2.d3js
url:http://d3js.org/
github:https://github.com/mbostock/d3
browser:Firefox, Chrome, Safari, Opera, IE9+
resume:D3.js是一個JavaScript庫,基於數據操做文檔。D3能夠幫助你把數據使用HTML、SVG和CSS。D3強調web標準給你完整的現代瀏覽器的功能沒有把本身和一個專有的框架,結合強大的可視化組件和DOM操做的數據驅動的方法。
3.envisionjs
url:http://www.humblesoftware.com/envision/index
github:https://github.com/HumbleSoftware/envisionjs
browser:IE6+、chrome、safari、firefox、opear
resume:envisionjs是一個庫來建立快速、動態和交互式可視化的圖表
4.jsxgraph
url:http://jsxgraph.uni-bayreuth.de/wp/
github:https://github.com/jsxgraph/jsxgraph
browser:現代瀏覽器
resume:JSXGraph交互式幾何是一個跨瀏覽器的庫,函數繪圖,圖表和數據可視化在web瀏覽器中。它徹底實如今JavaScript中,不依賴於任何其餘庫,並使用SVG VML或畫布上。
5.paperjs
url:http://paperjs.org/
github:https://github.com/paperjs/paper.js
browser:IE9+,chrome,firefox
resume:paperjs是一款不可多得的js插件,能夠繪製各類動態圖形效果
6.processingjs
url:http://processingjs.org/
github:https://github.com/processing-js/processing-js/
browser:現代瀏覽器
resume:processingjs是用Java編寫的,因此圖形在網頁上顯示要靠Java程序,使用canvas技術
7.Raphaël
url:http://raphaeljs.com/
github:
browser:Firefox 3.0+, Safari 3.0+, Chrome 5.0+, Opera 9.5+ and Internet Explorer 6.0+.
resume:Raphaël是一款繪製矢量圖的插件,支持低版本的瀏覽器
8.sparklines
url:http://omnipotent.net/jquery.sparkline/#s-about
github:
browser:Firefox 2+, Safari 3+, Opera 9, Chrome and Internet Explorer 6+,ios和andriod設備
resume:使用內嵌在HTML中的數據或經過javascript直接生成微線圖(小內聯圖表),最主要的特色是能夠生成波形圖。
9.tangle
url:http://worrydream.com/Tangle/
github:
browser:
resume:Tangle是一個JavaScript庫,用於建立活性文檔。讀者能夠交互式地探索可能性,玩參數,並當即看到文檔更新。Tangle是超級簡單,容易學習。
小結:後面將分享6款地圖插件。
6款地圖插件:
1.Kartograph
url:http://kartograph.org/
github:https://github.com/kartograph/kartograph.py
browser:Internet Explorer 7+,chrome,Firefox
resume:Gregor Aisch開發的一個基於JavaScript和Python的很是炫的、徹底使用矢量的庫。
2.leafletjs
url:http://leafletjs.com/
github:https://github.com/Leaflet/Leaflet
browser:Chrome,Firefox,Safari 5+,Opera 12+,IE 7–11
resume:leafletjs是一個開源的支持移動端的地圖插件,js文件僅僅有33kb,
3.Modest Maps
url:http://modestmaps.com/
github:https://github.com/modestmaps/modestmaps-js
browser:Firefox, Chrome, Opera, iOS, Android, and Internet Explorer 7-9.
resume:Modest Maps支持各類設備,也有不少版本。雖然是一款老的地圖插件,可是很是小、可擴展並且免費
4.polymaps
url:http://polymaps.org/
github:https://github.com/simplegeo/polymaps
browser:現代瀏覽器
resume:Polymaps依賴於SVG,所以在較新的瀏覽器中表現很好。
5.imagemapster
url:http://www.outsharked.com/imagemapster/
browser:Firefox, Chrome, Safari, Opera, IE6+
resume:ImageMapster是一個jQuery插件,它使你的HTML圖片像Flash同樣炫
6.datavlab
url:http://datavlab.org/
github:https://github.com/TBEDP/datavjs
browser:IE6+、chrome、safari、firefox、opear
resume:datav.js是爲了下降平常對於可視化方法使用的成本,用數據可視化的方法幫助到更多的人。
如今來分享9款關係圖插件:
1.arborjs
url:http://arborjs.org/halfviz/#/a-new-hope
github:https://github.com/samizdatco/arbor
browser:IE6+,chrome,firefox
resume:基於jQuery的圖譜可視化庫,對於高版本的瀏覽器這個庫使用了HTML的canvas元素
2.cubism
url:http://square.github.io/cubism/
github:https://github.com/square/cubism
browser:官方未說明
resume:時間序列數據可視化的D3插件
3.gantti
url:http://bastianallgeier.com/gantti/
github:https://github.com/bastianallgeier/gantti
browser:IE7+、chrome、safari、firefox、opear
resume:是一款PHP的前端數據展現插件
4.getspringy
url:http://getspringy.com/
github:https://github.com/dhotson/springy/
browser:官方未說明
resume:Springy是一個使用JavaScirpt實現的有向圖佈局算法,使用了真實世界中的一些物理原理,你能夠隨意拖動圖表中的元素。
5.graphdracula
url:http://www.graphdracula.net/
github:https://github.com/strathausen/dracula
browser:官方未說明
resume:graphdracula是一組工具來顯示和佈局互動圖表,以及各類相關算法。
6.sigamajs
url:http://sigmajs.org/
github:https://github.com/jacomyal/sigma.js
browser:IE9+,chrome,firefox
resume:一個很是輕量級的圖譜可視化庫。Sigma.js很漂亮,速度也快。
7.smoothiecharts
url:http://smoothiecharts.org/
github:https://github.com/joewalnes/smoothie/
browser:IE7+、chrome、safari、firefox、opear
resume:smoothiecharts是一個很是小的圖表庫爲實時流媒體數據而設計的
8.timeplot
url:http://www.simile-widgets.org/timeplot/
github:
browser:官方未說明
resume:Timeplot是基於dhtml AJAXy部件繪圖時間序列和覆蓋基於時間的事件
9.visjs
url:http://visjs.org/
github:https://github.com/almende/vis/
browser:Chrome, Firefox, Opera, Safari, IE9+
resume:Vis.js是一個動態的、基於瀏覽器可視化庫。庫被設計成易於使用,處理大量的動態數據,使操做和交互的數據。時間表,包括組件庫數據集網絡、Graph2d,Graph3d。python