# Chart.js

歡迎使用 Chart.js!

# 為什麼選擇 Chart.js

在眾多 JavaScript 應用程式開發者的圖表函式庫中 (在新視窗開啟),根據 GitHub 星星數 (在新視窗開啟)(約 60,000)和 npm 下載量 (在新視窗開啟)(每週約 2,400,000 次)來看,Chart.js 是目前最受歡迎的。

Chart.js 在 2013 年被創建並發布 (在新視窗開啟),但從那時起已經發展了很多。它是開源的,並根據非常寬鬆的 MIT 許可證 (在新視窗開啟) 授權,並由活躍的社群維護。

# 功能特色

Chart.js 提供一組常用的圖表類型、外掛程式和自訂選項。除了合理的 內建圖表類型 外,您還可以利用社群維護的額外 圖表類型 (在新視窗開啟)。最重要的是,可以將多種圖表類型組合到 混合圖表 中(本質上是將多種圖表類型混合到同一個畫布上)。

Chart.js 具有高度可自訂性,透過 自訂外掛程式 (在新視窗開啟) 來建立註解、縮放或拖放功能等等。

# 預設值

Chart.js 具有健全的預設設定,讓您可以非常輕鬆地開始使用,並取得一個可以投入生產的應用程式。即使您完全不指定任何選項,您也很有可能會得到一個非常吸引人的圖表。例如,Chart.js 預設啟用了動畫效果,因此您可以立即吸引人們注意您用數據講述的故事。

# 整合

Chart.js 具有內建的 TypeScript 類型,並且與所有流行的 JavaScript 框架 (在新視窗開啟) 相容,包括 React (在新視窗開啟)Vue (在新視窗開啟)Svelte (在新視窗開啟)Angular (在新視窗開啟)。您可以直接使用 Chart.js,或利用維護良好的封裝套件,以便與您選擇的框架進行更原生的整合。

# 開發者體驗

Chart.js 擁有非常詳盡的API 參考文件 (沒錯,您正在閱讀的就是),以及範例。維護者和社群成員熱切地在 Discord (在新視窗中開啟)GitHub Discussions (在新視窗中開啟) 以及 Stack Overflow (在新視窗中開啟) 上參與討論,其中有超過 11,000 個問題標記了 chart.js

# Canvas 渲染

與其他多數基於 D3.js 的圖表函式庫 (它們以 SVG 渲染不同),Chart.js 是在 HTML5 canvas 上渲染圖表元素。Canvas 渲染讓 Chart.js 的效能非常高,尤其是在處理大型資料集和複雜視覺化時,否則將需要在 DOM 樹中產生數千個 SVG 節點。同時,canvas 渲染不允許 CSS 樣式設定,因此您必須使用內建選項,或建立自訂外掛或圖表類型以依照您的喜好渲染所有內容。

# 效能

Chart.js 非常適合處理大型資料集。可以使用內部格式有效地擷取這類資料集,因此您可以跳過資料剖析正規化。或者,可以設定資料抽樣,以便在渲染之前對資料集進行取樣並縮減其大小。

最後,與 SVG 渲染相比,Chart.js 使用的 canvas 渲染減少了 DOM 樹的負擔。此外,Tree-shaking 支援可讓您在套件中包含最少的 Chart.js 程式碼,進而減少套件大小和頁面載入時間。

# 社群

Chart.js 由社群積極開發 (在新視窗中開啟)和維護。Chart.js 大約每兩個月進行一次小的版本發佈 (在新視窗中開啟),每隔幾年進行一次包含重大變更的主要版本發佈,Chart.js 在新增功能與避免造成跟上新功能的麻煩之間保持平衡。

上次更新時間: 2024/5/17 下午 12:33:38