4個頂級開源JavaScript圖表庫

圖表對於可視化數據和使網站具備吸引力很是重要。可視化演示使分析大塊數據和傳達信息變得更加容易。JavaScript圖表庫使你可以以易於理解和交互的方式可視化數據,並改善網站的設計。有四個頂級開源JavaScript圖表庫,你必定要Get!css

1.Chart.jshtml

Chart.js是一個開源JavaScript庫,容許你在應用程序上建立動畫,美觀和交互式圖表。它能夠在MIT許可下得到。前端

使用Chart.js,你能夠建立各類使人印象深入的圖表和圖形,包括條形圖,折線圖,面積圖,線性比例和散點圖。它徹底響應各類設備,並利用HTML5 Canvas元素進行渲染。ajax

如下是使用庫繪製條形圖的示例代碼。咱們將使用Chart.js內容交付網絡(CDN)將其包含在此示例中。請注意,使用的數據僅用於說明目的。canvas

<!DOCTYPE html>
<html>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.5.0/Chart.min.js"></script>
</head>
<body>
<canvas id="bar-chart" width=300" height="150"></canvas>
<script>
new Chart(document.getElementById("bar-chart"), {
type: 'bar',
data: {
labels: ["North America", "Latin America", "Europe", "Asia", "Africa"],
datasets: [
{
label: "Number of developers (millions)",
backgroundColor: ["red", "blue","yellow","green","pink"],
data: [7,4,6,9,3]
}
]
},
options: {
legend: { display: false },
title: {
display: true,
text: 'Number of Developers in Every Continent'
},
scales: {
yAxes: [{
ticks: {
beginAtZero:true
}
}]
}
}
});
</script>
</body>
</html>

前端全棧學習交流圈:866109386,面向1-3經驗年前端開發人員,幫助突破技術瓶頸,提高思惟能力數組

從這段代碼中能夠看出,經過將類型設置爲bar來構造條形圖。你能夠將條形的方向更改成其餘類型,例如將type設置爲horizontalBar。瀏覽器

經過在backgroundColor數組參數中提供顏色類型來設置條形圖的顏色。網絡

顏色分配給在相應數組中共享相同索引的標籤和數據。例如,第二個標籤「拉丁美洲」將設置爲「藍色」(第二種顏色)和4(數據中的第二個數字)。app

這是此代碼的輸出 框架

2.Chartist.js

Chartist.js是一個簡單的JavaScript動畫庫,容許你建立可自定義和美觀的響應圖表和其餘設計。開源庫可在WTFPL或MIT許可下得到。

該庫是由一羣對現有圖表工具不滿意的開發人員開發的,所以它爲設計人員和開發人員提供了出色的功能。

在項目中包含Chartist.js庫及其CSS文件後,你能夠使用它們建立各類類型的圖表,包括動畫,條形圖和折線圖。它利用SVG動態渲染圖表。

如下是使用庫繪製餅圖的代碼示例

<link href="https//cdn.jsdelivr.net/chartist.js/latest/chartist.min.css" rel="external nofollow" rel="stylesheet" type="text/css" />
<style>
.ct-series-a .ct-slice-pie {
fill: hsl(100, 20%, 50%); /* filling pie slices */
stroke: white; /*giving pie slices outline */
stroke-width: 5px; /* outline width */
}
.ct-series-b .ct-slice-pie {
fill: hsl(10, 40%, 60%);
stroke: white;
stroke-width: 5px;
}
.ct-series-c .ct-slice-pie {
fill: hsl(120, 30%, 80%);
}
.ct-series-d .ct-slice-pie {
fill: hsl(90, 70%, 30%);
}
.ct-series-e .ct-slice-pie {
fill: hsl(60, 140%, 20%);
}
</style>
<div ct-golden-section"></div>
<script src="https://cdn.jsdelivr.net/chartist.js/latest/chartist.min.js"></script>
var data = {
series: [45, 35, 20]
};
var sum = function(a, b) { return a + b };
new Chartist.Pie('.ct-chart', data, {
labelInterpolationFnc: function(value) {
return Math.round(value / data.series.reduce(sum) * 100) + '%';
}
});
</script>

Chartist JavaScript庫容許你使用各類預構建的CSS樣式,而不是指定項目的各類與樣式相關的組件。你能夠使用它們來控制建立的圖表的外觀。

例如,預先建立的CSS類.ct-chart用於構建餅圖的容器。並且,.ct-golden-section類用於獲取寬高比,能夠使用響應式設計進行縮放,併爲你節省計算固定尺寸的麻煩。Chartist還提供了你能夠在項目中使用的其餘類別的容器比率。

要設置各類餅圖樣式,能夠使用默認的.ct-series-a類。字母a與每一個系列計數(a,b,c等)一塊兒迭代,使得它與要設置樣式的切片相對應。

Chartist.Pie方法用於建立餅圖。要建立另外一種類型的圖表,例如折線圖,請使用Chartist.Line。

這是代碼的輸出

3.D3.js

D3.js是另外一個很棒的開源JavaScript圖表庫。它能夠在BSD許可下使用。D3主要用於根據提供的數據操縱和添加文檔的交互性。

你能夠使用這個神奇的3D動畫庫,使用HTML5,SVG和CSS可視化你的數據,讓網站更具吸引力。從本質上講,D3使你可以將數據綁定到文檔對象模型(DOM),而後使用基於數據的函數來更改文檔。

如下是使用庫繪製簡單條形圖的示例代碼

.chart div {
font: 15px sans-serif;
background-color: lightblue;
text-align: right;
padding:5px;
margin:5px;
color: white;
font-weight: bold;
}
<div
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/5.5.0/d3.min.js">
var data = [342,222,169,259,173];
d3.select(".chart")
.selectAll("div")
.data(data)
.enter()
.append("div")
.style("width", function(d){ return d + "px"; })
.text(function(d) { return d; });

使用D3庫的主要概念是首先應用CSS樣式選擇指向DOM節點,而後應用運算符來操做它們,就像在其餘DOM框架(如jQuery)中同樣。

將數據綁定到文檔後,將調用.enter()函數來爲傳入數據構建新節點。在.enter()函數以後調用的全部方法都將爲數據中的每一個項調用。

這是代碼的輸出

4.ECharts

ECharts 由百度前端技術部開發的,是一個純 Javascript 的圖表庫,能夠流暢的運行在 PC 和移動設備上,兼容當前絕大部分瀏覽器(IE8/9/10/十一、Chrome、Firefox、Safari等),底層依賴輕量級的 Canvas 類庫 ZRender,提供直觀,生動,可交互,可高度個性化定製的數據可視化圖表。

ECharts 有良好的自適應效果,ECharts 3 中更是加入了更多豐富的交互功能以及更多的可視化效果,而且對

相關文章
相關標籤/搜索