laravel5.5添加echarts实现画图功能的方法


Posted in PHP onOctober 09, 2019

一、下载echarts

我用的是3.X版本,下载地址

二、在页面中引入echarts

<script type="text/javascript" src="/js/echarts.min.js"></script>

我把下载下来的echarts.min.js放在了public/js/目录下

三、通过post的请求获取数据并在页面展示

1.添加路由

Route::get('/test2', 'CunliangController@test2')->name('test2');

Route::post('/odata', 'CunliangController@odata');

/test2用来展示echarts的界面,/odata获取数据。

2.控制器添加代码

public function test2()
{
 return view('cunliang.test2');
}
public function odata()
{
 //返回最近七天的数据
 $data = Cunliang::where("file_type", "O")->latest()
     ->take(7)
     ->get();

 return array_reverse($data->toArray(),false);

}

3.页面blade模板添加

<div id="contain" style="width: 950px;height:400px;"></div>

4.添加js

<script type="text/javascript">
 var names = [];
 var ttls = [];
 function getData()
 {
  $.post("{{ url('/odata') }}", {
   "_token": "{{ csrf_token() }}"
  }, function(data) {
   $.each(data, function(i, item) {
    names.push(item.update_date);
    ttls.push(item.space_size);
   });
  });
 }
 getData();
 function chart() {
  var myChart = echarts.init(document.getElementById("contain"));


  option = {
   title : {
    text: 'O域数据最近7天更新情况'
   },
   tooltip : {
    trigger: 'axis'
   },
   legend: {
    data:['数据大小']
   },
   toolbox: {
    show : true,
    feature : {
     mark : {show: true},
     dataView : {show: true, readOnly: false},
     magicType : {show: true, type: ['line', 'bar']},
     restore : {show: true},
     saveAsImage : {show: true}
    }
   },
   calculable : true,
   xAxis : [
    {
     axisLine: {
      lineStyle: { color: '#333' }
     },
     axisLabel: {
      rotate: 30,
      interval: 0
     },
     type : 'category',
     boundaryGap : false,
     data : names // x的数据,为上个方法中得到的names
    }
   ],
   yAxis : [
    {
     type : 'value',
     axisLabel : {
      formatter: '{value} M'
     },
     axisLine: {
      lineStyle: { color: '#333' }
     }
    }
   ],
   series : [
    {
     name:'数据大小',
     type:'line',
     smooth: 0.3,
     data: ttls // y轴的数据,由上个方法中得到的ttls
    }
   ]
 };
 // 使用刚指定的配置项和数据显示图表。
 myChart.setOption(option);
 }
 setTimeout('chart()', 1000);
</script>

其中getdata通过post得到的数据为echart准备数据,function chart()为echart的数据展示形式,可以根据自己需求在官网查找。

参考资料

官网教程

以上这篇laravel5.5添加echarts实现画图功能的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php 获取当前访问的url文件名的方法小结
Feb 08 PHP
WordPress判断用户是否登录的代码
Mar 17 PHP
Yii PHP Framework实用入门教程(详细介绍)
Jun 18 PHP
使用php检测用户当前使用的浏览器是否为IE浏览器
Dec 03 PHP
PHP上传图片进行等比缩放可增加水印功能
Jan 13 PHP
php去除数组中重复数据
Nov 18 PHP
几个实用的PHP内置函数使用指南
Nov 27 PHP
学习php设计模式 php实现桥梁模式(bridge)
Dec 07 PHP
Laravel中使用FormRequest进行表单验证方法及问题汇总
Jun 19 PHP
thinkPHP订单数字提醒功能的实现方法
Dec 01 PHP
PHP编程文件处理类SplFileObject和SplFileInfo用法实例分析
Jul 22 PHP
让你的PHP,APACHE,NGINX支持大文件上传
Mar 09 PHP
使用laravel和ECharts实现折线图效果的例子
Oct 09 #PHP
Laravel统计一段时间间隔的数据方法
Oct 09 #PHP
浅谈PHP5.6 与 PHP7.0 区别
Oct 09 #PHP
laravel按天、按小时,查询数据的实例
Oct 09 #PHP
laravel多条件查询方法(and,or嵌套查询)
Oct 09 #PHP
Laravel find in set排序实例
Oct 09 #PHP
对laravel in 查询的使用方法详解
Oct 09 #PHP
You might like
解析PHP中VC6 X86和VC9 X86的区别及 Non Thread Safe的意思
2013/06/28 PHP
Eclipse的PHP插件PHPEclipse安装和使用
2014/07/20 PHP
php生成图片验证码的实例讲解
2015/08/03 PHP
深入理解php printf() 输出格式化的字符串
2016/05/23 PHP
PHP开发中解决并发问题的几种实现方法分析
2017/11/13 PHP
PHP ADODB实现分页功能简单示例
2018/05/25 PHP
在Laravel的Model层做数据缓存的实现
2019/09/26 PHP
从零开始学习jQuery (二) 万能的选择器
2010/10/01 Javascript
实用的Jquery选项卡TAB示例代码
2013/08/28 Javascript
JavaScript用Number方法实现string转int
2014/05/13 Javascript
PhantomJS快速入门教程(服务器端的 JavaScript API 的 WebKit)
2015/08/06 Javascript
JavaScript+CSS实现仿天猫侧边网页菜单效果
2015/08/25 Javascript
JavaScript简单下拉菜单实例代码
2015/09/07 Javascript
果断收藏9个Javascript代码高亮脚本
2016/01/06 Javascript
AngularJS ng-template寄宿方式用法分析
2016/11/07 Javascript
PHP实现本地图片上传和验证功能
2017/02/27 Javascript
H5实现仿flash效果的实现代码
2017/09/29 Javascript
vue中实现左右联动的效果
2018/06/22 Javascript
Vue.js 通过jQuery ajax获取数据实现更新后重新渲染页面的方法
2018/08/09 jQuery
vue 自定义指令自动获取文本框焦点的方法
2018/08/25 Javascript
微信小程序-API接口安全详解
2019/07/16 Javascript
vue.js封装switch开关组件的操作
2020/10/26 Javascript
使用Python生成url短链接的方法
2015/05/04 Python
python购物车程序简单代码
2018/04/18 Python
解决TensorFlow GPU版出现OOM错误的问题
2020/02/03 Python
python字典的值可以修改吗
2020/06/29 Python
简述synchronized和java.util.concurrent.locks.Lock的异同
2014/12/08 面试题
给老师的道歉信
2014/01/11 职场文书
开工庆典邀请函范文
2014/01/16 职场文书
2013年军训通讯稿
2014/02/05 职场文书
教师竞聘演讲稿
2014/05/16 职场文书
售房协议书范本2014
2014/10/23 职场文书
2014年仓管员工作总结
2014/11/18 职场文书
专家推荐信范文
2015/03/26 职场文书
笔记本自带的win11如何跳过联网激活?
2022/04/20 数码科技
分享node.js实现简单登录注册的具体代码
2022/04/26 NodeJs