如何使用 JavaScript 中的 Fetch API 從 JSON 資料建立圖表?
在本文中,我們將探討如何在獲取**JSON**資料後建立圖表。為了獲取 JSON 資料,我們使用**Fetch API**的 `fetch()` 方法。我們首先獲取資料,一旦資料可用,我們就將其饋送到系統以建立圖表。Fetch API 提供了一個簡單的介面,用於訪問和操作**HTTP**請求和響應。
語法
const response = fetch(resource [, init])
引數
**resource** − 這是獲取資料的資源路徑。
**init** − 它定義了任何額外的選項,例如標頭、正文等。
方法
步驟如下:
**步驟 1** − 我們將透過呼叫 fetch 函式從遠端伺服器獲取資料。
**步驟 2** − 資料可用後,我們將將其饋送到系統。
**步驟 3** − 藉助 Chart JS 庫,我們將為此構建圖表。
示例 #1
在下面的示例中,我們從遠端伺服器獲取資料,然後建立所需的圖表。美國人口資料是從伺服器獲取的。
# index.html
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.5.0/Chart.min.js"> </script> <title>Population Chart</title> </head> <body> <h1 style="color: green;"> Welcome To Tutorials Point </h1> <div style="width: 800, height: 600"> <canvas id="bar-chart"> </canvas> </div> <script> getData(); async function getData() { const response = await fetch('https://datausa.io/api/data?drilldowns=Nation&measures=Population'); const data = await response.json(); console.log(data); length = data.data.length; console.log(length); labels = []; values = []; for (i = 0; i < length; i++) { labels.push(data.data[i].Year); values.push(data.data[i].Population); } new Chart(document.getElementById("bar-chart"), { type: 'bar', data: { labels: labels, datasets: [ { label: "Population (millions)", backgroundColor: ["#3a90cd", "#8e5ea2", "#3bba9f", "#e8c3b9", "#c45850", "#CD9C5C", "#40E0D0"], data: values } ] }, options: { legend: { display: false }, title: { display: true, text: 'U.S population' } } }); } </script> </body> </html>
輸出
上述程式成功執行後,將生成一個顯示美國人口的條形圖。您可以將滑鼠懸停在條形圖上以檢視特定年份的人口。它也可以在下面的 GIF 圖片中看到。
廣告