成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

好用的3個開源JavaScript圖表庫

開源 前端
對于數據可視化和制作精美網站來說,圖表和圖形很重要。視覺上的展示讓分析大塊數據及傳遞信息變得更簡單。JavaScript 圖表庫能讓數據以極好的、易于理解的和交互的方式進行可視化,還能夠優化你的網站設計。

 [[244588]]

圖表及其它可視化方式讓傳遞數據的信息變得更簡單。

對于數據可視化和制作精美網站來說,圖表和圖形很重要。視覺上的展示讓分析大塊數據及傳遞信息變得更簡單。JavaScript 圖表庫能讓數據以極好的、易于理解的和交互的方式進行可視化,還能夠優化你的網站設計。

本文會帶你學習很好的 3 個開源 JavaScript 圖表庫。 

1、 Chart.js

Chart.js 是一個開源的 JavaScript 庫,你可以在自己的應用中用它創建生動美麗和交互式的圖表。使用它需要遵循 MIT 協議。

使用 Chart.js,你可以創建各種各樣令人印象深刻的圖表和圖形,包括條形圖、折線圖、范圍圖、線性標度和散點圖。它可以響應各種設備,使用 HTML5 Canvas 元素進行繪制。

示例代碼如下,它使用該庫繪制了一個條形圖。本例中我們使用 Chart.js 的內容分發網絡(CDN)來包含這個庫。注意這里使用的數據僅用于展示。

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4.   <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.5.0/Chart.min.js"></script>
  5. </head> 
  6. <body>   
  7.     <canvas id="bar-chart" width=300" height="150"></canvas>  
  8.     <script>     
  9. new Chart(document.getElementById("bar-chart"), {
  10.     type: 'bar',
  11.     data: {
  12.       labels: ["North America", "Latin America", "Europe", "Asia", "Africa"],
  13.       datasets: [
  14.         {
  15.           label: "Number of developers (millions)",
  16.           backgroundColor: ["red", "blue","yellow","green","pink"],
  17.           data: [7,4,6,9,3]
  18.         }
  19.       ]
  20.     },
  21.     options: {
  22.       legend: { display: false },
  23.       title: {
  24.         display: true,
  25.         text: 'Number of Developers in Every Continent'
  26.       },
  27.  
  28.       scales: {
  29.             yAxes: [{
  30.                 ticks: {
  31.                     beginAtZero:true
  32.                 }
  33.             }]
  34.         } 
  35.     } 
  36. });
  37.     </script>   
  38. </body>
  39. </html>

如你所見,通過設置 typebar 來構造條形圖。你可以把條形體的方向改成其他類型 —— 比如把 type 設置成 horizontalBar

backgroundColor 數組參數中提供顏色類型,就可以設置條形圖的顏色。

顏色被分配給關聯數組中相同索引的標簽和數據。例如,第二個標簽 “Latin American”,顏色會是 “藍色(blue)”(第二個顏色),數值是 4(data 中的第二個數字)。

代碼的執行結果如下。

 

2、 Chartist.js

Chartist.js 是一個簡單的 JavaScript 動畫庫,你能夠自制美麗的響應式圖表,或者進行其他創作。使用它需要遵循 WTFPL 或者 MIT 協議。

這個庫是由一些對現有圖表工具不滿的開發者進行開發的,它可以為設計師或程序員提供美妙的功能。

在項目中包含 Chartist.js 庫后,你可以使用它們來創建各式各樣的圖表,包括動畫,條形圖和折線圖。它使用 SVG 來動態渲染圖表。

這里是使用該庫繪制一個餅圖的例子。

  1. <!DOCTYPE html>
  2. <html>
  3. <head>   
  4.     <link href="https//cdn.jsdelivr.net/chartist.js/latest/chartist.min.css" rel="stylesheet" type="text/css" />   
  5.     <style>
  6.         .ct-series-a .ct-slice-pie {
  7.             fill: hsl(100, 20%, 50%); /* filling pie slices */
  8.             stroke: white; /*giving pie slices outline */          
  9.             stroke-width: 5px;  /* outline width */
  10.           } 
  11.           .ct-series-b .ct-slice-pie {
  12.             fill: hsl(10, 40%, 60%);
  13.             stroke: white;
  14.             stroke-width: 5px;
  15.           } 
  16.           .ct-series-c .ct-slice-pie {
  17.             fill: hsl(120, 30%, 80%);
  18.             stroke: white;
  19.             stroke-width: 5px;
  20.           } 
  21.           .ct-series-d .ct-slice-pie {
  22.             fill: hsl(90, 70%, 30%);
  23.             stroke: white;
  24.             stroke-width: 5px;
  25.           }
  26.           .ct-series-e .ct-slice-pie {
  27.             fill: hsl(60, 140%, 20%);
  28.             stroke: white;
  29.             stroke-width: 5px;
  30.           } 
  31.     </style>
  32.      </head> 
  33. <body> 
  34.     <div class="ct-chart ct-golden-section"></div> 
  35.     <script src="https://cdn.jsdelivr.net/chartist.js/latest/chartist.min.js"></script> 
  36.     <script>       
  37.       var data = {
  38.             series: [45, 35, 20]
  39.             }; 
  40.       var sum = function(a, b) { return a + b };
  41.  
  42.       new Chartist.Pie('.ct-chart', data, {
  43.         labelInterpolationFnc: function(value) {
  44.           return Math.round(value / data.series.reduce(sum) * 100) + '%';
  45.             }
  46.               });
  47.      </script>
  48. </body>
  49. </html>

使用 Chartist JavaScript 庫,你可以使用各種預先構建好的 CSS 樣式,而不是在項目中指定各種與樣式相關的部分。你可以使用這些樣式來設置已創建的圖表的外觀。

比如,預創建的 CSS 類 .ct-chart 是用來構建餅狀圖的容器。還有 .ct-golden-section 類可用于獲取縱橫比,它基于響應式設計進行縮放,幫你解決了計算固定尺寸的麻煩。Chartist 還提供了其它類別的比例容器,你可以在自己的項目中使用它們。

為了給各個扇形設置樣式,可以使用默認的 .ct-serials-a 類。字母 a 是根據系列的數量變化的(a、b、c,等等),因此它與每個要設置樣式的扇形相對應。

Chartist.Pie 方法用來創建一個餅狀圖。要創建另一種類型的圖表,比如折線圖,請使用 Chartist.Line

代碼的執行結果如下。

 

3、 D3.js

D3.js 是另一個好用的開源 JavaScript 圖表庫。使用它需要遵循 BSD 許可證。D3 的主要用途是,根據提供的數據,處理和添加文檔的交互功能,。

借助這個 3D 動畫庫,你可以通過 HTML5、SVG 和 CSS 來可視化你的數據,并且讓你的網站變得更精美。更重要的是,使用 D3,你可以把數據綁定到文檔對象模型(DOM)上,然后使用基于數據的函數改變文檔。

示例代碼如下,它使用該庫繪制了一個簡單的條形圖。

  1. <!DOCTYPE html>
  2. <html>
  3. <head>     
  4.     <style>
  5.     .chart div {
  6.       font: 15px sans-serif;
  7.       background-color: lightblue;
  8.       text-align: right;
  9.       padding:5px;
  10.       margin:5px;
  11.       color: white;
  12.       font-weight: bold;
  13.     }       
  14.     </style>
  15.      </head> 
  16. <body> 
  17.     <div class="chart"></div>   
  18.     <script src="https://cdnjs.cloudflare.com/ajax/libs/d3/5.5.0/d3.min.js"></script> 
  19.     <script> 
  20.       var data = [342,222,169,259,173]; 
  21.       d3.select(".chart")
  22.         .selectAll("div")
  23.         .data(data)
  24.           .enter()
  25.           .append("div")
  26.           .style("width", function(d){ return d + "px"; })
  27.           .text(function(d) { return d; });    
  28.  
  29.     </script>
  30. </body>
  31. </html>

使用 D3 庫的主要概念是應用 CSS 樣式選擇器來定位 DOM 節點,然后對其執行操作,就像其它的 DOM 框架,比如 JQuery。

將數據綁定到文檔上后,.enter() 函數會被調用,為即將到來的數據構建新的節點。所有在 .enter() 之后調用的方法會為數據中的每一個項目調用一次。

代碼的執行結果如下。

 

總結

JavaScript 圖表庫提供了強大的工具,你可以將自己的網絡資源進行數據可視化。通過這三個開源庫,你可以把自己的網站變得更好看,更容易使用。

你知道其它強大的用于創造 JavaScript 動畫效果的前端庫嗎?請在下方的評論區留言分享。

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2018-09-07 06:14:16

開源JavaScript圖表

2015-08-24 10:13:48

javascript圖表庫

2015-06-19 11:08:05

JavaScript圖表庫

2017-02-24 18:50:23

開源Javascript圖表庫

2022-01-11 15:44:15

JavaScript圖表庫數據

2017-12-23 08:50:30

JavascripCSS數據

2019-07-18 10:14:32

前端Javascript圖表庫

2020-12-14 08:30:02

JavaScript開發代碼

2023-08-18 15:12:00

JavaScript開發

2010-06-10 10:15:50

MySQL數據庫查詢

2020-06-16 08:39:35

JavaScript圖像處理庫

2021-03-18 09:06:17

JavaScriptPythonPyExecJS

2020-04-22 15:45:59

Linux shellLinux命令

2010-05-20 18:12:37

MySQL數據庫查詢

2020-10-14 12:29:51

開源圖表 開發

2020-03-08 13:24:47

JavaScript開發

2019-04-28 11:15:36

Kubernetes開源工具

2020-08-13 06:56:57

Javascript插件前端

2024-05-15 07:48:08

.NET開源圖表庫

2018-06-27 10:45:12

數據Python程序
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美日韩免费在线 | 浮生影院免费观看中文版 | 91久久精品国产 | 美女啪啪国产 | 91国产视频在线观看 | 看a级黄色毛片 | 日韩一区二 | 亚洲综合色视频在线观看 | 91精品国产综合久久久久久首页 | 91欧美精品成人综合在线观看 | 欧美美乳 | 少妇一区在线观看 | 成人精品一区二区三区四区 | 亚洲国产精品va在线看黑人 | 成年人在线观看视频 | 综合一区二区三区 | 日韩中文av在线 | 91久久久久久久久久久久久 | 精品久久久久久亚洲精品 | 暴草美女| 国产又色又爽又黄又免费 | 亚洲精品一 | 亚洲视频中文字幕 | 欧美日韩视频在线第一区 | 综合九九| 曰批视频在线观看 | 国产精品一码二码三码在线 | 操到爽| 欧洲性生活视频 | 国产一级一级毛片 | 一级a性色生活片久久毛片 午夜精品在线观看 | 99精品视频免费观看 | 黄色毛片在线看 | 最新中文字幕在线 | 韩日在线观看视频 | 黄色毛片一级 | 国产一区在线免费观看 | 亚洲有码转帖 | 久久99视频这里只有精品 | 中国黄色毛片视频 | 国产精品一区二区不卡 |