在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 相关文章推荐
12个非常有创意的JavaScript小游戏
Mar 18 Javascript
jquery offset函数应用实例
Nov 14 Javascript
JavaScript实现表格排序方法
Jun 14 Javascript
js实现div的切换特效上一个下一个
Feb 11 Javascript
Extjs表单常见验证小结
Mar 07 Javascript
Javascript快速排序算法详解
Dec 03 Javascript
jQuery实现3D文字特效的方法
Mar 10 Javascript
javascript下使用Promise封装FileReader
Feb 19 Javascript
js微信分享API
Oct 11 Javascript
vue实现登录后页面跳转到之前页面
Jan 07 Javascript
jQuery实现的监听导航滚动置顶状态功能示例
Jul 23 jQuery
微信小程序使用车牌号输入法的示例代码
Aug 20 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生成html分页列表的代码
2007/03/18 PHP
PHP strtok()函数的优点分析
2010/03/02 PHP
PHP和javascript常用正则表达式及用法实例
2014/07/01 PHP
php实现将Session写入数据库
2015/07/26 PHP
php监测数据是否成功插入到Mysql数据库的方法
2016/11/25 PHP
PHP设计模式概论【概念、分类、原则等】
2020/05/01 PHP
javascript页面动态显示时间变化示例代码
2013/12/18 Javascript
JS截取url中问号后面参数的值信息
2014/04/29 Javascript
我的Node.js学习之路(四)--单元测试
2014/07/06 Javascript
轻松学习jQuery插件EasyUI EasyUI创建菜单与按钮
2015/11/30 Javascript
js获取当前年月日-YYYYmmDD格式的实现代码
2016/06/01 Javascript
BootstrapValidator实现注册校验和登录错误提示效果
2017/03/10 Javascript
Vue自定义指令使用方法详解
2017/08/21 Javascript
Angular4实现图片上传预览路径不安全的问题解决
2017/12/25 Javascript
vue加载自定义的js文件方法
2018/03/13 Javascript
详解关于Vue版本不匹配问题(Vue packages version mismatch)
2018/09/17 Javascript
koa-router路由参数和前端路由的结合详解
2019/05/19 Javascript
详解nginx配置vue h5 history去除#号
2020/11/09 Javascript
[01:46]DOTA2上海特锦赛小组赛英文解说KotlGuy采访
2016/02/27 DOTA
[01:37]PWL S2开团时刻DAY1&2——这符有毒
2020/11/20 DOTA
python爬虫获取多页天涯帖子
2018/02/23 Python
django的auth认证,authenticate和装饰器功能详解
2019/07/25 Python
基于 Django 的手机管理系统实现过程详解
2019/08/16 Python
Python操作excel的方法总结(xlrd、xlwt、openpyxl)
2019/09/02 Python
python实现的按要求生成手机号功能示例
2019/10/08 Python
python字典和json.dumps()的遇到的坑分析
2020/03/11 Python
Python3 中sorted() 函数的用法
2020/03/24 Python
MyHeritage美国:家族史研究和DNA测试的领先服务
2019/05/27 全球购物
Trip.com澳大利亚:在线旅行社
2019/12/01 全球购物
同学聚会主持词
2014/03/18 职场文书
新品发布会主持词
2014/04/02 职场文书
应届大专生自荐书
2014/06/16 职场文书
三方股东合作协议书
2014/10/28 职场文书
《丑小鸭》教学反思
2016/02/19 职场文书
iPhone13再次曝光
2021/04/15 数码科技
Windows11里微软已经将驱动程序安装位置A盘删除
2021/11/21 数码科技