在vue中使用echarts(折线图的demo,markline用法)


Posted in Javascript onJuly 20, 2020

公司最近在用vue开发项目,项目接近尾声了,趁休息时间写点demo——

vue引入echarts(折线图的demo)

主要是解决引入echarts,markline的使用(基准线)

这是demo的效果图:

vue脚手架不多赘述

1.安装依赖

cnpm install echarts -S

2.在main.js中引入echarts

import echarts from 'echarts'

3.在main.js中安装

Vue.prototype.echarts = echarts;

一般来说能正常挂载上组件,就可以在页面中正常使用了

废话不多说上代码(因为自己也是小白阶段所以写的注释多了点,以便以后使用)

1.HTML部分

<template>
 <div class="content">
 <p class="prompt_p">   近七天温度折线图</p>
 <div class="seven_echarts" id="seven"> 
 </div>
 </div> 
</template>

2.js部分

<script type="text/javascript">
	export default{
		data(){
			return{	
  seven_chart:null,
				month_chart:null,
  seven_option : {
				 title : {
				 	 // text: '未来一周气温变化',//感觉头部有点乱,没使用自带的标题
				 // subtext: '纯属虚构'
   x: 'left',
   align: 'center'
   },
				 tooltip: {
				 trigger: 'axis'
				 },
				 legend: {
				 data:['最高气温','最低气温',]
				 },
				 grid: {
				 left: '3%',
				 right: '4%',
				 bottom: '3%',
				 containLabel: true
				 },
				 toolbox: {
				 feature: {
				  magicType: {type: ['line', 'bar']},//柱状图和西和折线图切换
				  restore: {},//刷新
				  saveAsImage: {},//将图表以折线图的形式展现
				 }
				 },
				 xAxis: {
				 type: 'category',
				 boundaryGap: false,
				 data: ["11-26","11-27","11-28","11-29","11-30","12-01","12-02"]
				 },
				 yAxis: {
				 	name:"℃",
				 nameLocation: 'end',
				 	type: 'value',
				 axisLabel: {
				  formatter: '{value} '
				 }
				 },
				 series: [
				 		{
				  name:'最低气温',
				  type:'line',
				  data:[0,-1,-3,-4,0,-2,-4],
				  lineStyle:{//设置折线色颜色
   				color:'#3f89ec'
 					},
 					itemStyle:{//设置折线折点的颜色
						  normal : {
						  color:'#3f89ec'
						 }
 					}
				 },
				 	{
				  name:'最高气温',
				  type:'line',
				  data:[9,10,6,7,12,11,8],
				  lineStyle:{//设置折线色颜色
  			 		color:'black'
 					},
 					itemStyle:{//设置折线折点的颜色
						  normal : {
						  color:'black'
						 }
 					}			  
				 },
				 {
				  name:'平行于y轴的趋势线',
				  type:'line',
				  markLine: {
				  name:'aa',
				  data: [
					  {
	 							name: '0℃标准线',
	 								yAxis: 0,
	 								 lineStyle:{//设置折线色颜色
	   							color:'red'
	 								},
	 							},
 							],
 							symbol: ['arrow', 'none'],//将箭头向左 默认值是向右的
 							label:{
 								show:true,
  					position:'middle',//markline描述位于中间 right,left,middle
  					formatter: '{b}: {c}',//显示name中的描述
								}

				  }
				 }
				 
				 ],
				},
			}
		},
		mounted:function (){
			this.get_echarts();
		},
		methods:{	
			get_echarts:function(){
				this.seven_chart = this.echarts.init(document.getElementById("seven"));
				// 把配置和数据放这里
				this.seven_chart.setOption(this.seven_option)  
			}
 },
 beforeDestroy() {
  if (!this.seven_chart) { return }
  this.seven_chart.dispose();
  this.seven_chart = null;
 },
	}
</script>

3.css部分

<style type="text/css">
.content{
 width: 100%;
}
.content p{
 margin-top: 1rem;
 font-size: 0.4rem;
 color: #666666;
}
.seven_echarts{
 height: 11rem;
 width: 94%;
}
</style>

好了结束,本人目前还是前端的小白,如有错误欢迎指正,以后会不定期更新哟!

补充知识:Echarts中有多条曲线,数据精度为小数时,画线部分与小数刻度显示不准确

最近遇到了一个问题就是 多条曲线,数据精度为小数时,画线部分与小数刻度显示不怎么准确,但是单条曲线的时候就没问题

// stack: ‘总量', //此处注释掉 这个问题 就解决了 所有的都要注释掉

series: [
 {
 name: 'line1',
 type: 'line',
 // stack: '总量',  //此处注释掉
 data: this.lineData.series[0].data  //data中包含带有小数的数据
 },
 {
 name: 'line2',
 type: 'line',
 // stack: '总量',  //此处注释掉
 data: this.lineData.series[1].data  //data中包含带有小数的数据
 }
]

如果还有什么问题,大家留言一起讨论。

以上这篇在vue中使用echarts(折线图的demo,markline用法)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript面向对象的方式实现的弹出层效果代码
Jan 28 Javascript
jquery 的 $(&quot;#id&quot;).html() 无内容的解决方法
Jun 07 Javascript
jquery使用animate方法实现控制元素移动
Mar 27 Javascript
javascript十六进制及二进制转化的方法
May 06 Javascript
JQuery中上下文选择器实现方法
May 18 Javascript
jQ处理xml文件和xml字符串的方法(详解)
Nov 22 Javascript
通过jsonp获取json数据实现AJAX跨域请求
Jan 22 Javascript
AngularJS实现进度条功能示例
Jul 05 Javascript
Vue2.0点击切换类名改变样式的方法
Aug 22 Javascript
解决vue的 v-for 循环中图片加载路径问题
Sep 03 Javascript
vue里的data要用return返回的原因浅析
May 28 Javascript
Js通过AES加密后PHP用Openssl解密的方法
Jul 12 Javascript
微信小程序实现时间戳格式转换
Jul 20 #Javascript
解决Vue + Echarts 使用markLine标线(precision精度问题)
Jul 20 #Javascript
Jquery如何使用animation动画效果改变背景色的代码
Jul 20 #jQuery
解决echarts echarts数据动态更新和dataZoom被重置问题
Jul 20 #Javascript
JavaScript如何实现监听键盘输入和鼠标监点击
Jul 20 #Javascript
解决echarts vue数据更新,视图不更新问题(echarts嵌在vue弹框中)
Jul 20 #Javascript
基于Echarts图表在div动态切换时不显示的解决方式
Jul 20 #Javascript
You might like
无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装最快的解决办法
2010/08/01 PHP
微博短链接算法php版本实现代码
2012/09/15 PHP
php5.2 Json不能正确处理中文、GB编码的解决方法
2014/03/28 PHP
php通过array_merge()函数合并两个数组的方法
2015/03/18 PHP
如何利用http协议发布博客园博文评论
2015/08/03 PHP
注意!PHP 7中不要做的10件事
2016/09/18 PHP
PHP的mysqli_set_charset()函数讲解
2019/01/23 PHP
关于laravel 数据库迁移中integer类型是无法指定长度的问题
2019/10/09 PHP
TP - 比RBAC更好的权限认证方式(Auth类认证)
2021/03/09 PHP
javascript fullscreen全屏实现代码
2009/04/09 Javascript
jquery 选项卡效果 新手代码
2011/07/08 Javascript
Javascript实现滑块滑动改变值的实现代码
2013/04/12 Javascript
js遍历子节点子元素附属性及方法
2014/08/19 Javascript
基于input框覆盖掉数字英文的实例讲解
2017/07/21 Javascript
利用vue开发一个所谓的数独方法实例
2017/12/21 Javascript
layui 解决form表单点击无反应的问题
2019/10/25 Javascript
Element-ui el-tree新增和删除节点后如何刷新tree的实例
2020/08/31 Javascript
python实现的解析crontab配置文件代码
2014/06/30 Python
python获取从命令行输入数字的方法
2015/04/29 Python
python判断图片宽度和高度后删除图片的方法
2015/05/22 Python
Python聚类算法之基本K均值实例详解
2015/11/20 Python
简要讲解Python编程中线程的创建与锁的使用
2016/02/28 Python
python3.4用循环往mysql5.7中写数据并输出的实现方法
2017/06/20 Python
基于Django contrib Comments 评论模块(详解)
2017/12/08 Python
python机器学习理论与实战(六)支持向量机
2018/01/19 Python
python图形开发GUI库wxpython使用方法详解
2020/02/14 Python
学生实习介绍信
2014/01/15 职场文书
护士辞职信范文
2014/01/19 职场文书
防邪知识进家庭活动方案
2014/08/26 职场文书
2014年计划生育工作总结
2014/11/14 职场文书
优秀教师先进事迹材料
2014/12/15 职场文书
高中教师个人工作总结
2015/02/10 职场文书
2015年教导处教学工作总结
2015/07/22 职场文书
导游词之阆中古城
2019/12/23 职场文书
关于CSS浮动与取消浮动的问题
2021/06/28 HTML / CSS
Python实现猜拳与猜数字游戏的方法详解
2022/04/06 Python