您好,登錄后才能下訂單哦!
如何在Laravel項目中使用Chart.js?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
介紹
Chart.js是一個HTML5圖表庫,使用canvas元素來展示各式各樣的客戶端圖表,支持折線圖、柱形圖、雷達圖、餅圖、環形圖等, 本文將介紹如何在laravel項目中使用chart.js
安裝
可以通過以下命令在 npm 或 bower 中來安裝chart.js。
npm install chart.js --save bower install chart.js --save
可以在你的項目中使用 CDN link。
https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.6.0/Chart.bundle.js https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.6.0/Chart.bundle.min.js https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.6.0/Chart.js https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.6.0/Chart.min.js
可以從GitHub里面下載最新版本的 Chart.js 從github下載的話,里面也有很多例子可以學習。
我這邊選擇的是下載了幾個js文件,然后放置于Laravel項目的public/js目錄下面,如下圖:
使用
在html中任何你希望的位置加入以下代碼, 這個canvas就是圖表的位置。:
<canvas id="my_chart" width="300" height="300"></canvas>
然后在controller中實現一個數據查詢的方法,且要返回一個json字符串, 具體的數據根據你的需求而定,這邊我只查了一組數據,制作一個餅圖,也可以要多組數據制作折線圖,柱狀圖等。
public function GetChartData(){ $my_data = array(); array_push($today_data, VisitCapacity::where('my_data','>=', Carbon::today())->where('site',1)->count()); array_push($today_data, VisitCapacity::where('my_data','>=', Carbon::today())->where('site',2)->count()); array_push($today_data, VisitCapacity::where('my_data','>=', Carbon::today())->where('site',3)->count()); array_push($today_data, VisitCapacity::where('my_data','>=', Carbon::today())->where('site',4)->count()); Log::info(json_encode($my_data)); return $my_data; }
添加路由:
Route::get('get_chart_data', 'Member\UserController@GetChartData');
js實現:
$.get('get_chart_data',function (data, status) { var ctx = document.getElementById("my_chart").getContext("2d"); var my_chart = new Chart(ctx,{ type: 'pie', data: { labels: [ "首頁文章列表", "分類文章列表", "文章詳情", "關于我", ], datasets: [{ data: data, backgroundColor: [ window.chartColors.red, window.chartColors.orange, window.chartColors.purple, window.chartColors.green, ], }] }, options: { responsive: true, } }); });
顏色的定義:
window.chartColors = { red: 'rgb(255, 99, 132)', orange: 'rgb(255, 159, 64)', yellow: 'rgb(255, 205, 86)', green: 'rgb(75, 192, 192)', blue: 'rgb(54, 162, 235)', purple: 'rgb(153, 102, 255)', grey: 'rgb(201, 203, 207)' };
關于如何在Laravel項目中使用Chart.js問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。