Chart.js在Laravel项目中的应用示例
发布时间 - 2026-01-11 03:10:54 点击率:次介绍

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)'
};
结果如下图:
将js中的type的值pie改成doughnut,结果如下图:
更多的使用见官方文档:http://chartjs.cn/docs/#line-chart-introduction
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# Chart.js
# Laravel
# 使用Chart.js图表库制作漂亮的响应式表单
# Chart.js 轻量级HTML5图表绘制工具库(知识整理)
# 详解Chart.js轻量级图表库的使用经验
# 在 Angular 中使用Chart.js 和 ng2-charts的示例代码
# 使用Vue.js 和Chart.js制作绚丽多彩的图表
# ichart.js绘制虚线、平均分虚线效果的实现代码
# vue集成chart.js的实现方法
# 利用ECharts.js画K线图的方法示例
# JavaScript Chart 插件整理
# 详解vue文件中使用echarts.js的两种方式
# vue.js+Echarts开发图表放大缩小功能实例
# Chart.js功能与使用方法小结
# 如下图
# 文章列表
# 的是
# 是一个
# 几个
# 也有
# 我只
# 折线图
# 可以通过
# 要多
# 而定
# 首页
# 中来
# 各式各样
# 大家多多
# 我这边
# 客户端
# 数据查询
# 文档
# 下载最新版本
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
高防服务器如何保障网站安全无虞?
如何在万网ECS上快速搭建专属网站?
公司网站制作价格怎么算,公司办个官网需要多少钱?
Laravel怎么配置自定义表前缀_Laravel数据库迁移与Eloquent表名映射【步骤】
惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?
iOS UIView常见属性方法小结
详解Oracle修改字段类型方法总结
如何在企业微信快速生成手机电脑官网?
为什么php本地部署后css不生效_静态资源加载失败修复技巧【技巧】
canvas 画布在主流浏览器中的尺寸限制详细介绍
jimdo怎样用html5做选项卡_jimdo选项卡html5实现与切换效果【指南】
西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?
大同网页,大同瑞慈医院官网?
如何正确选择百度移动适配建站域名?
微博html5版本怎么弄发语音微博_语音录制入口及时长限制操作【教程】
Laravel Debugbar怎么安装_Laravel调试工具栏配置指南
北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?
Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】
Laravel如何使用Spatie Media Library_Laravel图片上传管理与缩略图生成【步骤】
小米17系列还有一款新机?主打6.9英寸大直屏和旗舰级影像
详解Android图表 MPAndroidChart折线图
中山网站推广排名,中山信息港登录入口?
Laravel的辅助函数有哪些_Laravel常用Helpers函数提高开发效率
Laravel如何记录日志_Laravel Logging系统配置与自定义日志通道
Laravel如何实现URL美化Slug功能_Laravel使用eloquent-sluggable生成别名【方法】
如何基于云服务器快速搭建网站及云盘系统?
javascript基于原型链的继承及call和apply函数用法分析
Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理
如何在万网主机上快速搭建网站?
rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted
EditPlus中的正则表达式实战(6)
简单实现Android验证码
HTML5空格和margin有啥区别_空格与外边距的使用场景【说明】
Linux安全能力提升路径_长期防护思维说明【指导】
Win11搜索栏无法输入_解决Win11开始菜单搜索没反应问题【技巧】
Laravel如何实现多语言支持_Laravel本地化与国际化(i18n)配置教程
独立制作一个网站多少钱,建立网站需要花多少钱?
Laravel如何生成API文档?(Swagger/OpenAPI教程)
Laravel怎么在Controller之外的地方验证数据
DeepSeek是免费使用的吗 DeepSeek收费模式与Pro版本功能详解
Laravel项目结构怎么组织_大型Laravel应用的最佳目录结构实践
Laravel如何配置和使用缓存?(Redis代码示例)
浅谈redis在项目中的应用
C++用Dijkstra(迪杰斯特拉)算法求最短路径
黑客如何通过漏洞一步步攻陷网站服务器?
如何快速上传自定义模板至建站之星?
微信小程序 scroll-view组件实现列表页实例代码
HTML透明颜色代码在Angular里怎么设置_Angular透明颜色使用指南【详解】
如何在IIS中配置站点IP、端口及主机头?
Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程

