如何在網頁上畫出漂亮 Chart 圖

更新於 2024/11/27閱讀時間約 4 分鐘

身為一個大公司的小小 IT 人員,最常接到的任務就是老闆想要看報表。而在報表上看到一堆的數字他們又不開心,於是只能做個美美的 Charts給他們看。

上圖是 apache echarts 的範例。

上圖是 apache echarts 的範例。


今天我們就來看看網路有什麼好用的工具,讓我們可以快速的畫出漂亮的圖形化 Charts

1.Chart.js

Chart.js 的 ICON

Chart.js 的 ICON


Chart.js 是一個免費開源的 JavaScript 工具庫,是由 Nick Dawnie在 2013年創建,目前由 Chart.js Team 維護,最新版來到4.4.6 (2024/10/28)。

Chart.js 支援長條圖(bar),折線圖(line),面積圖,圓餅圖(pie),泡泡圖(bubble),雷達圖(adar),散佈圖(scatter),極座標圖(polar area)…等類型。

Chart.js 支援的各種圖形

Chart.js 支援的各種圖形

Chart.js的缺點就是沒有支援一些較專業的圖形,例如股票市場常用的K線圖、 統計數據分佈用的箱形圖(Box Plots),也沒有一些較客製化的圖形,例如台灣縣市地圖之類的。

Chart.js的優點是簡單容易上手,官方的文件範例支援相當的完整。


2.Apache ECharts

ECharts 由 Apache 軟體基金會開發

ECharts 由 Apache 軟體基金會開發

ECharts 是一個免費開源的 JavaScript 工具庫,由 Apache軟體基金會提供,功能相當強大,幾乎可以支援各種常用報表圖形,還可以載入SVG向量圖片,或是儲存成JSON格式的地理座標,繪製出地圖。ECharts也可以直接載入百度地圖,在地圖上繪製線條。

ECharts 的示例相當豐富,各種報表用的 Chart圖,都有支援。

ECharts 的示例相當豐富,各種報表用的 Chart圖,都有支援。

ECharts 支援svg向量圖,json 格式的地圖資訊檔,還可以直接載入百度地圖

ECharts 支援svg向量圖,json 格式的地圖資訊檔,還可以直接載入百度地圖

ECharts 的儀錶盤示例。

ECharts 的儀錶盤示例。

ECharts 支援 lines3D 圖形

ECharts 支援 lines3D 圖形

Apache ECharts 前身是百度ECharts,在2018年1月16日納入 Apache Incubator (孵化器),進而在 2020年12月16日孵化畢業,目前版本來到5.5.1(2024/6/27)。

Apache ECharts 缺點就是太強大,相較於Chart.js複雜了一點點。但是因為前身是百度ECharts,簡體中文的開發者相當多,遇到問題上網查一查應該都可以解決。



3.D3.js

D3.js 也是一種 JavaScript 資料視覺化工具庫

D3.js 也是一種 JavaScript 資料視覺化工具庫


D3.js 又稱為 Data-Driven Documents,是一個使用 JavaScript 開發的資料視覺化程式庫。首次面世的時間在2011年2月18日,目前的版本來到7.9.0(2024年3月12日)。

D3.js 可以將大量的數據(JSON、CSV或GeoJSON)建立成SVG圖片,並使用CSS來呈現資料,下圖就是運用D3.js + 台灣地理座標所製作的台灣縣市地圖。製作步驟

D3.js的運用靈活性相當高,可以創建各種複雜的圖表和視覺化效果,但相對的就比較難以入門,使用者需要具一定的JavaScript和SVG知識,開發的時間也較長。



4.Google Charts

Google Charts 是 Google目前免費提供的 JavaScript 函式庫。

Google Charts 是 Google目前免費提供的 JavaScript 函式庫。

Google Charts 是由 Google 免費提供的 JavaScript 函式庫。

Google Charts也支援各式各樣的 Charts

Google Charts也支援各式各樣的 Charts

Google Charts 因為是由 Google提供的服務,它能免費多久也是個問題,所以在網路上使用者就沒有其他函式庫來得多。


5.Highcharts

HighCharts 是由 High Soft 提供的 JavaScript函式庫

HighCharts 是由 High Soft 提供的 JavaScript函式庫

HighCharts 是由 High Soft 提供的 JavaScript 函式庫,它提個人和非商業用途使用者免費使用這一個函式庫。若是商業使用者則需要付費使用。

HighCharts 同樣支援各式各樣的圖形

HighCharts 同樣支援各式各樣的圖形

HighCharts 最大的特色是可以將產出的Chart下載成圖片或是CSV、XLS

HighCharts 最大的特色是可以將產出的Chart下載成圖片或是CSV、XLS

HighCharts 是相當簡單易用的 JavaScript 函式庫,用它畫出來的Charts相當的漂亮,可惜它有非商業的使用限制。







avatar-img
1會員
17內容數
如果可以無所事事的放空,那才是真的幸福?
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
天空 的其他內容
什麼是 XAMPP 呢? X 指的是跨平台,它在Windows、MAC OS X、Linux 都有發行。 A 指的是 Apache,它是免費開放原始碼的網頁伺服器,幾乎是個人架設網站的首選。 M 指的是 MySQL 資料庫,但在 Oracle 收購之後開始發行商業版,這裡的 M 改為Maria
因2008年任職的公司要分紅配股,於是我開了第一個證券戶:日盛證券+日盛銀行 當初智慧型手機都還沒普及,只有電腦版的電子下單程式,或是打電話請營業員下單,現在「日盛」都已經成為時代的眼淚,在2023年4月9日併入「富邦證券」。 1.富邦證券 我的富邦證券由於是從日盛證券合併而來,富邦證券也繼承
HeidiSQL 是一套免費、開源的MySQL GUI 管理工具 https://www.heidisql.com/ 從前我們用來管理 MySQL 資料庫都會用 phpMyAdmin,也就是還要再開一個瀏覽器頁面來管理 MySQL ,雖然 phpMyAdmin 很好用,但用 php 網頁來管理
MySQL(MariaDB)是一套非常流行的資料庫系統,因為它開源、免費,幾乎是每一個人架站者的首選資料庫。 Microsoft Excel 更不用說,它是辦公室必備神器,老闆愛用來看報表,所以工程師們一定要會使用它。 今天我們要把 Excel資料寫入MySQL,除了用MySQL的一些管理軟體外
表格可調整欄位,這是很常用到的功能,先看結果如下: 我用了一個DIV包在TABLE之外,所以這個DIV的CSS也會影響TABLE寬度, 以下是程式碼: <!DOCTYPE html> <html lang="zh-TW"> <head> <meta charset="UTF-8">
最近開發程式都用這一套:VSCode 對老程式員來說,用Notepad++就能開發程式,何必再多安裝一套程式開發工具。 但是我還是跟風,選了這套VS Code,主要還是因為 Code比Notepad++強大多了。 VSCode 與 Notepad++比較: 在編輯HTML、PHP時程式中穿插
什麼是 XAMPP 呢? X 指的是跨平台,它在Windows、MAC OS X、Linux 都有發行。 A 指的是 Apache,它是免費開放原始碼的網頁伺服器,幾乎是個人架設網站的首選。 M 指的是 MySQL 資料庫,但在 Oracle 收購之後開始發行商業版,這裡的 M 改為Maria
因2008年任職的公司要分紅配股,於是我開了第一個證券戶:日盛證券+日盛銀行 當初智慧型手機都還沒普及,只有電腦版的電子下單程式,或是打電話請營業員下單,現在「日盛」都已經成為時代的眼淚,在2023年4月9日併入「富邦證券」。 1.富邦證券 我的富邦證券由於是從日盛證券合併而來,富邦證券也繼承
HeidiSQL 是一套免費、開源的MySQL GUI 管理工具 https://www.heidisql.com/ 從前我們用來管理 MySQL 資料庫都會用 phpMyAdmin,也就是還要再開一個瀏覽器頁面來管理 MySQL ,雖然 phpMyAdmin 很好用,但用 php 網頁來管理
MySQL(MariaDB)是一套非常流行的資料庫系統,因為它開源、免費,幾乎是每一個人架站者的首選資料庫。 Microsoft Excel 更不用說,它是辦公室必備神器,老闆愛用來看報表,所以工程師們一定要會使用它。 今天我們要把 Excel資料寫入MySQL,除了用MySQL的一些管理軟體外
表格可調整欄位,這是很常用到的功能,先看結果如下: 我用了一個DIV包在TABLE之外,所以這個DIV的CSS也會影響TABLE寬度, 以下是程式碼: <!DOCTYPE html> <html lang="zh-TW"> <head> <meta charset="UTF-8">
最近開發程式都用這一套:VSCode 對老程式員來說,用Notepad++就能開發程式,何必再多安裝一套程式開發工具。 但是我還是跟風,選了這套VS Code,主要還是因為 Code比Notepad++強大多了。 VSCode 與 Notepad++比較: 在編輯HTML、PHP時程式中穿插
本篇參與的主題活動
  駄菓子(だがし)約在江戶時代左右出現,相比當時使用進口砂糖製作、常出現在宴席、供品、禮品的上菓子 (じょうがし),用日本產的便宜黑糖或水果增添甜味的菓子則稱為雜菓子(ざがし),雜菓子的原料取得相對簡單,作為庶民的零食也較便宜。當時用一文錢也買得起雜菓子,所以雜菓子也稱一文菓子(いちもんがし)。
  駄菓子(だがし)約在江戶時代左右出現,相比當時使用進口砂糖製作、常出現在宴席、供品、禮品的上菓子 (じょうがし),用日本產的便宜黑糖或水果增添甜味的菓子則稱為雜菓子(ざがし),雜菓子的原料取得相對簡單,作為庶民的零食也較便宜。當時用一文錢也買得起雜菓子,所以雜菓子也稱一文菓子(いちもんがし)。
你可能也想看
Google News 追蹤
Thumbnail
本文探討了複利效應的重要性,並藉由巴菲特的投資理念,說明如何選擇穩定產生正報酬的資產及長期持有的核心理念。透過定期定額的投資方式,不僅能減少情緒影響,還能持續參與全球股市的發展。此外,文中介紹了使用國泰 Cube App 的便利性及低手續費,幫助投資者簡化投資流程,達成長期穩定增長的財務目標。
經過了一個週末伙伴們在群組問了剪輯的操作問題。覺得大家雖然不熟悉這個領域,但慢慢的進步很好。這幾天我也在思考跨部門合作的優點,設計層面我們提供基礎概念配合業務的專業知識與應對經驗,由於業務部更接近人群知道客戶的痛點,或許會發現我們看不到的層面。這樣互相分享各自的經驗,互相學習一起進步的氛圍,不管是個
在現代企業管理中,如何有效地處理各類工作任務與客戶需求,是提高整體運營效率的核心。工單系統,作為一種集成管理工具,已成為許多企業提升效率與服務質量的重要手段。
Thumbnail
《100個領導基本╳100個工作實踐》 ★透過《100個基本》掌握原則,依循自己的成長軌跡蛻變。
Thumbnail
作者 Only 系列文章,【一天一千字,進化每一次】簡報在職場上極為重要,不僅是視覺美觀,更需具備口頭表達力、重點提取力和邏輯說服力。成功的簡報應明確目標、把握聽眾需求,結論先行、少即是多。準備充分,簡報內容應輔助演講,避免冗長繁瑣。
Thumbnail
專業知識與持續學習:擁有深入的企業管理、服務行銷、網路行銷、自媒體製作等領域的專業知識。 持續關注最新的行業趨勢與發展,不斷學習並更新自己的知識庫。 準備與設計課程:根據企業或學員的需求設計課程,確保課程內容符合學員的期望並具有實用性。 準備詳細的課程大綱、教學材料與案例分析,以提升學員的學習
Thumbnail
在工作中,我們經常需要處理各種報表,而其中一項任務就是每天手動更新報表。這可能是一個繁瑣且容易被遺忘的工作,但有幸的是,我們可以利用VBA(Visual Basic for Applications)和Windows工作排程器來自動化這個過程,讓我們在不知不覺中完成這項任務。
Thumbnail
每年年底或是年初,都是訂立新年度目標的時期。但是訂立年度目標並不是一件容易的事。本文將提供一些簡單的訂立年度目標的方法和技巧,讓每個人都可以快速上手,不用把訂立目標想得太過於複雜。
Thumbnail
不要躊躇遲疑,不要搖擺不定。讓自己成為一個意志堅定處事果斷,具備令部屬信服權威的領導者吧!
Thumbnail
本文探討了複利效應的重要性,並藉由巴菲特的投資理念,說明如何選擇穩定產生正報酬的資產及長期持有的核心理念。透過定期定額的投資方式,不僅能減少情緒影響,還能持續參與全球股市的發展。此外,文中介紹了使用國泰 Cube App 的便利性及低手續費,幫助投資者簡化投資流程,達成長期穩定增長的財務目標。
經過了一個週末伙伴們在群組問了剪輯的操作問題。覺得大家雖然不熟悉這個領域,但慢慢的進步很好。這幾天我也在思考跨部門合作的優點,設計層面我們提供基礎概念配合業務的專業知識與應對經驗,由於業務部更接近人群知道客戶的痛點,或許會發現我們看不到的層面。這樣互相分享各自的經驗,互相學習一起進步的氛圍,不管是個
在現代企業管理中,如何有效地處理各類工作任務與客戶需求,是提高整體運營效率的核心。工單系統,作為一種集成管理工具,已成為許多企業提升效率與服務質量的重要手段。
Thumbnail
《100個領導基本╳100個工作實踐》 ★透過《100個基本》掌握原則,依循自己的成長軌跡蛻變。
Thumbnail
作者 Only 系列文章,【一天一千字,進化每一次】簡報在職場上極為重要,不僅是視覺美觀,更需具備口頭表達力、重點提取力和邏輯說服力。成功的簡報應明確目標、把握聽眾需求,結論先行、少即是多。準備充分,簡報內容應輔助演講,避免冗長繁瑣。
Thumbnail
專業知識與持續學習:擁有深入的企業管理、服務行銷、網路行銷、自媒體製作等領域的專業知識。 持續關注最新的行業趨勢與發展,不斷學習並更新自己的知識庫。 準備與設計課程:根據企業或學員的需求設計課程,確保課程內容符合學員的期望並具有實用性。 準備詳細的課程大綱、教學材料與案例分析,以提升學員的學習
Thumbnail
在工作中,我們經常需要處理各種報表,而其中一項任務就是每天手動更新報表。這可能是一個繁瑣且容易被遺忘的工作,但有幸的是,我們可以利用VBA(Visual Basic for Applications)和Windows工作排程器來自動化這個過程,讓我們在不知不覺中完成這項任務。
Thumbnail
每年年底或是年初,都是訂立新年度目標的時期。但是訂立年度目標並不是一件容易的事。本文將提供一些簡單的訂立年度目標的方法和技巧,讓每個人都可以快速上手,不用把訂立目標想得太過於複雜。
Thumbnail
不要躊躇遲疑,不要搖擺不定。讓自己成為一個意志堅定處事果斷,具備令部屬信服權威的領導者吧!