echart官网地址: https://www.echartsjs.com/index.html

echarts实例地址:https://echarts.baidu.com/examples/

vue-cli对echart的引用

安装echarts依赖 npm install echarts -S

方式一:全局引入

main.js

import echarts from 'echarts'
Vue.prototype.$echarts = echarts

vue组件

<template>
<div>
<div id="myChart" :style="{width: '300px', height: '300px'}"></div>
</div>
</template> <script>
export default {
name: 'myecharts2',
data () {
return {
msg: 'Welcome to Your Vue.js App'
}
},
mounted () {
this.drawLine()
},
methods: {
drawLine () {
// 基于准备好的dom,初始化echarts实例
let myChart = this.$echarts.init(document.getElementById('myChart'))
// 绘制图表
myChart.setOption({
title: { text: '在Vue中使用echarts' },
tooltip: {},
xAxis: {
data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子']
},
yAxis: {},
series: [{
name: '销量',
type: 'bar',
data: [5, 20, 36, 10, 10, 20]
}]
})
}
}
}
</script> <style scoped> </style>

echarts全局引用

方式二:按需引入

全局引入会将所有的echarts图标打包,导致体积过大,所以还是按需引入较好

<template>
<div>
<e-charts class="echart-item" theme="ovilia-green" :options="option_default"></e-charts>
</div>
</template> <script>
import ECharts from 'vue-echarts'
let echarts = require('echarts/lib/echarts') // 引入线形图组件
require('echarts/lib/chart/line')
// 引入提示框和title组件
require('echarts/lib/component/tooltip')
require('echarts/lib/component/title')
export default {
name: 'myecharts',
data: function () {
return {
option_default: {
tooltip: {
trigger: 'axis'
},
xAxis: {
type: 'category',
boundaryGap: false,
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
},
yAxis: {
type: 'value'
},
series: [{
data: [820, 932, 901, 934, 1290, 1330, 1320],
type: 'line',
areaStyle: {}
}]
} }
},
components: {
ECharts
}
}
</script> <style lang="less" scoped>
@gray_light:#999;
@gray_normal:#666;
@gray_dark:#333;
@font_small:12px;
.stats-chart{
border-top:1px solid #eee;
padding-top: 10px;
margin-bottom: 20px;
p{font-size: @font_small;color:@gray_light;}
.stats-chart-item{
border:1px solid #eee;
border-radius: 5px;
padding:15px 0px;
.chart-item-name{margin-left:20px;margin-bottom:5px; font-size: @font_small;color:@gray_light}
.chart-item-total{margin-left:20px;font-size:22px;color:@gray_dark}
.echart-item{
width: 100%;
margin-top: -45px;
margin-bottom: -35px;
max-height: 220px;
@media (min-width: 768px) {
max-height: 260px;
}
@media (min-width: 1280px) {
max-height: 300px;
}
}
}
}
</style>

echarts按需引入

几点问题:

tooltip显示问题(即鼠标上浮到echarts组件会显示x、y坐标数据)

1、需要引入提示框和title组件

// 引入提示框和title组件
require('echarts/lib/component/tooltip')
require('echarts/lib/component/title')

2、在图标option中设置tooltip的trigger属性

tooltip: {
          trigger: 'axis'
        },

trigger:默认 'item' 可选‘item|axis’

item:鼠标上浮到具体的点位显示tip提示,并只显示一条线的

axis:鼠标上浮到echart表格显示tip提示,可显示多条线

说明文档地址:https://echarts.baidu.com/echarts2/doc/doc.html#Tooltip

Y轴标签值太长显示不全问题

未处理之前的效果

处理:设置option下的有关属性

grid.left:grid组件距离容器左侧的距离,默认10%,可以修改成像素值和百分比

grid.right:grid组件距离容器右侧的距离,默认10%,可以修改成像素值和百分比

yAxis.axisLabel.margin:刻度标签与轴线之间的距离。默认值是8
yAxis.axisLabel.formatter:刻度标签的内容格式器,支持字符串模板和回调函数两种形式。比如可以设置太长了换行之类的。

设置参数如下:

    option:{
grid: {show:'true',borderWidth:'0',left: '15%',right:'15%'},
yAxis: {
type: 'value',
axisTick: {
show: false
},
axisLine: {
show: false
},
axisLabel: {
margin: 2,
formatter: function (value, index) {
if (value >= 100000 && value <) {
value = value / 10000 + '万'
} else if (value >= 10000000) {
value = value / 10000000 + '千万'
}
return value
}
}
},
……
}

echartsY轴边距设置

引用: https://blog.csdn.net/dandelion_drq/article/details/79270597

相关属性说明:(项目中使用的是line线形图组件)

lineStyle:线条颜色设置

lineStyle:{
                color:'#3ca0ff',
                type:'solid'
              }

areaStyle:线条下的阴影颜色设置

areaStyle:{
                color:'#c1eaff'
              }

series.itemStyle 数据节点颜色设置

series.smooth 平滑曲线设置

series: [{
                data: [],
                type: 'line',
                smooth: true,
                areaStyle: {},
                itemStyle: {
                  normal: {
                    color:'#00a9ff'
                  }
                }
              }]

echarts的一点记录的更多相关文章

  1. 关于Java8:StreamAPI的一点记录

    关于 Stream ,Functional Interface 的一点记录 stream对于集合操作的便捷度提升: import java.util.ArrayList; import java.ut ...

  2. 对Integer类中的私有IntegerCache缓存类的一点记录

    对Integer类中的私有IntegerCache缓存类的一点记录 // Integer类有内部缓存,存贮着-128 到 127. // 所以,每个使用这些数字的变量都指向同一个缓存数据 // 因此可 ...

  3. 从symbol link和hard link 到 unlink函数的一点记录

    之前一直对Linux的文件类型中的 “l” 类型的了解不是很深入,最近经过“圣经”指点,略知一二,在此先记录一下,以便以后查阅,之后会对文件和目录.文件I/O这部分再扩充. 首先需明确,Unix在查阅 ...

  4. 关于删除MySQL Logs的一点记录

    五一前,一个DBA同事反馈,在日常环境中删除一个大的slow log文件(假设文件大小10G以上吧),然后在MySQL中执行flush slow logs,会发现mysqld hang住. 今天尝试着 ...

  5. 关于类属性值校验的一点记录 【知识点Attribute】

    好久没有进来了,之前励志坚持写博客,记录自己在做代码搬运工这段历程中点滴,可是仅仅只坚持了几天,就放弃了!果然是,世上无难事,只要肯放弃!哈哈……闲话不多说,开始进入正题,给自己留点笔记,避免将来老了 ...

  6. 【.Net】关于内存缓存的一点记录

    引言 最近看了内存缓存的一些介绍和用法,在此做个简单记录. MemoryCache 类 MemoryCache 类是.Net 4.0推出的类库,主要是为了方便在Winform和Wpf中构建缓存框架的. ...

  7. 关于db2的一点记录

    近期听搞db2的兄弟说:db2数据库软件的license 不区分平台(os). 先记下来.像db2这么高大上的软件,接触的机会是比較少的. 另外:db2 的license是须要打的,不打的话,超过一段 ...

  8. Nodejs Promise的一点记录

    项目需要,看了点nodejs,其中比较难理解的就是Promise了,记录一下学习bluebird提供的Promise实现. Promise.promisifyAll(obj)方法 作用:把对象的方法属 ...

  9. 关于strlen误用的一点记录

    今天帮一个朋友查一个错误,是运行时报vector iterator incompatible,一般这种问题是向量和迭代器的类型不兼容,或者是进行迭代器判等时前后向量的结构发生变化,如erase操作之后 ...

随机推荐

  1. IDEA中spring约束文件报红 的解决办法

  2. 全面系统Python3入门+进阶-1-6 python能做些什么?

    结束

  3. Linux系统调优——磁盘I/O(三)

    (1).查看I/O运行状态相关工具 1)查看文件系统块大小 对于ext4文件系统,查看文件系统块大小 [root@CentOS6 ~]# tune2fs -l /dev/sda1 | grep siz ...

  4. response.getWriter().write的用法

    /** * 获取手机验证码的方法 */ var loopObjBindMobil = null; var secondsBindMobil = 0; function hqBindYzm(moblie ...

  5. tcp内存占用/socket内存占用

    net.ipv4.tcp_mem 内核分配给TCP连接的内存,单位是Page,1 Page = 4096 Bytes,可用命令查看: #getconf PAGESIZE 4096 net.ipv4.t ...

  6. linux 软连接【转】

    https://www.cnblogs.com/kex1n/p/5193826.html这是linux中一个非常重要命令,请大家一定要熟悉.它的功能是为某一个文件在另外一个位置建立一个同不的链接,这个 ...

  7. 【转】那些年用过的Redis集群架构(含面试解析)

    引言 今天是2019年2月12号,也就是大年初八,我接到了高中同学刘有码面试失利的消息. 他面试的时候,身份是某知名公司的小码农一枚,却因为不懂自己生产上Redis是如何部署的,导致面试失败! 人间惨 ...

  8. LaTeX 课本、LaTeX 学习方法、LaTeX 入门(2)

    1. 关于TeX,LaTeX,MikTex,CTeX等的区别 2. 课本 课本1 >> 下载链接:复制链接到迅雷或IDM下载很快 课本2 >> 下载链接:复制链接到迅雷或IDM ...

  9. STL源码剖析——空间配置器Allocator#2 一/二级空间配置器

    上节学习了内存配置后的对象构造行为和内存释放前的对象析构行为,在这一节来学习内存的配置与释放. C++的内存配置基本操作是::operator new(),而释放基本操作是::operator del ...

  10. 多进程实现并发服务器(TCP)

    前提:基于Linux系统的学习 /*多进程实现并发服务器 父进程任务 1.从未决连接队列中取出请求,建立和客户端的连接,cfd 2.创建子进程 3.close(cfd) 4.负责子进程的收尸工作 子进 ...