溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何在Laravel項(xiàng)目中使用Chart.js

發(fā)布時(shí)間:2021-01-13 16:27:09 來源:億速云 閱讀:329 作者:Leah 欄目:開發(fā)技術(shù)

如何在Laravel項(xiàng)目中使用Chart.js?針對這個(gè)問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡單易行的方法。

介紹

Chart.js是一個(gè)HTML5圖表庫,使用canvas元素來展示各式各樣的客戶端圖表,支持折線圖、柱形圖、雷達(dá)圖、餅圖、環(huán)形圖等, 本文將介紹如何在laravel項(xiàng)目中使用chart.js

安裝

可以通過以下命令在 npm 或 bower 中來安裝chart.js。

npm install chart.js --save
bower install chart.js --save

可以在你的項(xiàng)目中使用 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下載的話,里面也有很多例子可以學(xué)習(xí)。

如何在Laravel項(xiàng)目中使用Chart.js

我這邊選擇的是下載了幾個(gè)js文件,然后放置于Laravel項(xiàng)目的public/js目錄下面,如下圖:

如何在Laravel項(xiàng)目中使用Chart.js

使用

在html中任何你希望的位置加入以下代碼, 這個(gè)canvas就是圖表的位置。:

<canvas id="my_chart" width="300" height="300"></canvas>

然后在controller中實(shí)現(xiàn)一個(gè)數(shù)據(jù)查詢的方法,且要返回一個(gè)json字符串, 具體的數(shù)據(jù)根據(jù)你的需求而定,這邊我只查了一組數(shù)據(jù),制作一個(gè)餅圖,也可以要多組數(shù)據(jù)制作折線圖,柱狀圖等。

  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實(shí)現(xiàn):

$.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: [
            "首頁文章列表",
            "分類文章列表",
            "文章詳情",
            "關(guān)于我",
          ],
          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)'
};

關(guān)于如何在Laravel項(xiàng)目中使用Chart.js問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI