php echarts 两条曲线图,使用laravel和ECharts实现折线图效果的例子
1、首先引入echart.js
2、html页面,要有一个布局容器,用来显示图像,一定要设置宽和高
3、echarts折线图的使用
var myChart = echarts.init(document.getElementById("contain"));
option = {
title : {
text: '时间变化图' // 标题
},
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, // 是否启动拖拽重计算属性,默认false
xAxis : [ // x坐标轴
{
axisLine: { // x坐标轴颜色
lineStyle: { color: '#333' }
},
axisLabel: { // x轴的数据会旋转30度
rotate: 30,
interval: 0
},
type : 'category',
boundaryGap : false, // x轴从0开始
data : [] // x轴数据
}
],
yAxis : [ // y轴
{
type : 'value',
axisLabel : {
formatter: '{value} 秒' // y轴的值都加上秒的单位
},
axisLine: {
lineStyle: { color: '#333' }
}
}
],
series : [ // 设置图标数据用
{
name:'时间',
type:'line',
smooth: 0.3, // 线有弧度
data: [] // y轴数据
}
]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
4、实现功能
(1)路由
Route::get('/', 'UserController@index');
Route::post('/axis', 'UserController@axis');
(2)方法
public function index()
{
return view('user.index');
}
// 是ajax所用的的方法,得到要显示的数据,返回数组
public function axis()
{
$key = Key::all('name', 'ttl', 'created_time');
return $key;
}
(3)当访问/首页时,到index.blade.php
(4)index.blade.php的内容
var names = []; // 设置两个变量用来存变量
var ttls = [];
var time = Date.parse(new Date()).toString().substr(0, 10); // 获取当前时间,精确到秒,但因为是毫秒级的,会多3个0,变成字符串后去掉
time = parseInt(time);
function getData()
{
$.post("{{ url('/axis') }}", {
"_token": "{{ csrf_token() }}"
}, function(data) {
$.each(data, function(i, item) {
names.push(item.name);
if((ttl = (parseInt(item.ttl) + parseInt(item.created_time) - time)) > 0) { // 小于0就==0,
ttls.push(ttl);
} else {
ttls.push(0);
}
});
});
}
getData(); // 一定不能忘了,调用
// 实现画图的功能
function chart() {
var myChart = echarts.init(document.getElementById("contain"));
option = {
title : {
text: '键名过期时间变化图'
},
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} 秒'
},
axisLine: {
lineStyle: { color: '#333' }
}
}
],
series : [
{
name:'过期剩余时间',
type:'line',
smooth: 0.3,
data: ttls // y轴的数据,由上个方法中得到的ttls
}
]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
}
setTimeout('chart()', 1000); // 为什么加定时器?因为上面是一起执行的,可能还未取得数据,便已经将图画好了,图上就没有数据,所以这里我延迟了1s,
(5)大功告成!!
以上这篇使用laravel和ECharts实现折线图效果的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
php echarts 两条曲线图,使用laravel和ECharts实现折线图效果的例子相关推荐
- 解决ECharts两条条折线图数据一样时,拐点处数据重合(设置ECharts两条折线图拐点处数据一上一下)
解决办法:在series里选择一条数据,给其label的position赋值为"top"或"bottom",与另一个进行区分. 示例代码如下: option = ...
- python画曲线图-Python数据可视化之Matplotlib(折线图)
一.使用Matplotlib生成数据图:是Python上的一个2D绘图库,它可以在跨平台上边出很多高质量的图像. 1.Pycharm安装Matplotlib库 (1)点击菜单上的"file& ...
- Python+Flask实现全国、全球疫情大数据可视化(二):网页页面布局+echarts可视化中国地图、世界地图、柱状图和折线图
文章目录 相关文章 一.实现效果 二.页面布局html+css main.html main.css 三.echarts图表制作 1.全国累计趋势折线图ec_l1.js 2.全国趋势变化折线图ec_l ...
- 设置echarts的grid、tooltip、柱状图渐变色、折线图渐变色
grid: {show: false,left: '0px',top: '50px',right: '1px',bottom: '0px',containLabel: true,backgroundC ...
- python绘制不带颜色曲线图_Python数据可视化库-Matplotlib——折线图,子图绘制
# coding:utf-8 import pandas as pd import numpy as np from matplotlib import pylab as plt # 导入数据可视化库 ...
- Echarts学习一:制作简单的柱形图、折线图、饼图
具体可以参考官网文档,已经写的很详细了:个性化图表样式 ECharts 提供了丰富的自定义配置选项,并且能够从全局.系列.数据三个层级去设置数据图形的样式.ECharts 中的饼图主要是通过扇形的弧度 ...
- 【echart数组数据】echarts两条或两条以上x轴不同的线合并x轴 含有不连续数据
一种方法是使用空字符串填充,类似于[1,2,3,'','','',6,7,8] 另一种方法是使用坐标,如[[0,0],[3,3]] 以下为使用坐标示例 <!DOCTYPE html> &l ...
- python画两条曲线图_python绘制多个曲线的折线图
这篇文章利用的是matplotlib.pyplot.plot的工具来绘制折线图,这里先给出一个段代码和结果图: # -*- coding: UTF-8 -*- import numpy as np i ...
- python一个图画两条曲线_烦恼如何用python同一图里画多数据曲线吗?教你6种解法...
概要: python的matplotlib作图很强大,本文教你用6种不同方式解决将多种数据曲线画到一起. 问题: 今天,老板又要一个数据报表,小明选择用 python来实现."用matplo ...
最新文章
- 10.9 kill以及raise函数
- 讲真,你知道Python咋来的吗?
- python xrange_Python学习中的知识点(range和xrange)
- AOP 拦截器 JDK动态代理机制 struts2 mybatis spring-aop
- 项目功能介绍 非常有用
- 华为鸿蒙深度研究(100页)
- 很详细的解决Tomcat乱码问题
- 常用的页面布局(两栏布局、三栏(圣杯、双飞翼)布局)
- Flink_Flink ON YARN containerized.heap-cutoff-min 内存调整
- 正则表达式-re.error: unbalanced parenthesis at position 7
- 【牛客竞赛】Increasing Subsequence题解
- 强迫症狂喜!PC端相册还能智能分类!
- iphoneipad图标尺寸
- 学习Java应该关注哪些网站?
- 基本数据类型一题解析:已知m=11,n=41,输出m和n的2次方、3次方、4次方。(附代码)
- MySQL 必知必会系列(五)
- 计算机领域哪个证值钱,最值钱且相对好考的证书有哪些?
- python在遥感中的应用_Python在遥感中的应用——导言
- ERP系统有哪些品牌?
- 51单片机控制SG90舵机、MG90S舵机
热门文章
- html 物流状态,css+html如何实现物流进度样式(代码示例)
- centos rsyslog mysql_centos7+rsyslog+loganalyzer+mysql 搭建rsyslog日志服务器
- [javaweb] servlet 服务器端转发和客户端重定向 (四)
- Jmeter设置变量与引用变量(三)
- 10 行 Python 代码,批量压缩图片 500 张,简直太强大了
- 嵌入式c语言检测键盘,【精华整理】C语言嵌入式系统编程修炼--键盘操作篇
- 指令发送没反应_如何判断网络故障的原因?7个指令,教你逐步排查!
- c/c++ 结构体前加不加typedef有什么区别?
- 天眼FAST如何发现脉冲星?
- 【图像处理】图像内插“最近邻插值 最近邻内插法(Nearest Neighbour Interpolate)”代码演示(调整图像大小、放大、缩小)