Vue中使用echarts图表插件

标签: echarts  vue

一、安装echarts依赖

npm install echarts -S
或者使用淘宝的镜像
npm install -g cnpm --registry=https://registry.npm.taobao.org
cnpm install echarts -S

二、创建图表

  • 首先需要全局引入
  • 在main.js中

// 引入echarts
import echarts from 'echarts'
Vue.prototype.$echarts = echarts

  • 在Echarts.vue中
<div id="myChart" :style="{width: '300px', height: '300px'}"></div>
export default {
  name: 'hello',
  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]
            }]
        });
    }
  }
}
  • 注意:我们要在mounted生命周期函数中实例化echarts对象。因为我们要确保dom元素已经挂载到页面中

 

 

这样一个简单的图表就完成了,是不是觉得很简单?假如在一个大型的项目中,而且数据是非常复杂的?那么该如何操作?

三、按需引入

  • 由于全局引入会将所有的echarts图表打包,导致体积过大
  • 在Echarts.vue文件中

 

// 引入基本模板
let echarts = require('echarts/lib/echarts')
// 引入柱状图组件
require('echarts/lib/chart/bar')
// 引入提示框和title组件
require('echarts/lib/component/tooltip')
require('echarts/lib/component/title')
  • 使用 require 而不是 import

四、以组件的形式用echarts

  • 从上边可以看出,你每次在使用echarts的时候,都必须要重复的引入,这样很不方便
  • vue作为一个组件化开发的框架,我们可以使用组件的方式进行集成。每次我们引入组件,进行使用,这样就方便的多。

对echarts进行的一个简单的vue组件的集成。
在echarts中

  • 子组件:

 

props部分是我接收到的参数,父组件获取数据分发,data是父组件分发给echarts的数据源。

  • 父组件:

 

 


 

版权声明:本文为qq_18671415原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_18671415/article/details/106722824

智能推荐

vue中使用echarts

安装echarts 在main.js中配置 新建一个模块chart.vue,加入代码 运行效果如下:...

vue中使用ECharts

在vue中使用ECharts,可以使用vue-echarts 拓展,跟echarts相比,可以按需引入,减小项目体积 首先使用 命令 安装 vue-echarts 然后需要在main.js中引入   在引入组件后便可以直接使用,如下为饼图 至于其中的配置项,则请前往官网查看  echarts官网实例...

vue中使用echarts

安装echarts依赖 创建图表 首先需要全局引入 在main.js中 vue中代码: 注意:需要在mounted生命周期函数中实例化echarts对象。...

vue中使用echarts

安装依赖包 在组件内引入echarts html部分 js部分 为什么不在created中调用方法,要在mounted中调用呢?...

Linux信号及工作原理

  什么是信号     信号可以理解为软件中断,是在软件层次上对中断机制的一种模拟,在原理上,一个进程收到一个信号与处理器收到一个中断请求可以说是差不多的。信号是异步的,一个进程不必通过任何操作来等待信号的到达。信号可以直接进行用户空间进程和内核进程之间的交互,内核进程也可以利用它来通知用户空间进程发生了哪些系统事件。   谁来产生信号 信号事件的发生有两个...

猜你喜欢

手机端图片放大,双指放大,元素的双指缩放

在做webapp时候,遇到一个需要做双指放大的功能,需求是:一张带有坐标的图片上有固定的点,需要点击这些坐标上的点进入相应的商品,并且需要对这一块进行双指可以缩放,双击缩放; 一开始是自己写监听touch事件进行处理,但是再缩放的时候,偶尔出现卡顿闪烁,用户体验不很好,后来采用插件 pinch-zoom GitHub地址: https://github.com/manuelstofer/...

leetcode 剑指offer 54 二叉搜索树的第k大节点

第 K 大节点即反中序遍历大第 K 个数。...

redis 初步了解

1.连接redis 通过java操作 1.首先 导入redis驱动 2.连接redis通过jedis 2.创建redis连接池 连接redis通过 jedis 相当于HTTPclient 1.创建单例模式的方法 在调用的时候被创建 2.创建私有静态 jedisPool 3. 创建私有类 创建静态代码块 放入连接池的基本配置 4.有 最大连接数 最大空闲书 最小空闲连接数 5. 创建连接redis对...

第6章数据类型-基本数据类型-Boolean类型-main

防采集标记:亢少军老师的课程和资料 Dart交流群:1046954554 Flutter开源项目请关注: https://github.com/kangshaojun @作者: 亢少军 '...

使用 Infura 和 web3.js 呼叫合约

如果你希望马上开始学习以太坊DApp开发,可以访问汇智网提供的出色的在线互动教程: 以太坊DApp实战入门教程 以太坊去中心化电商应用开发实战 如果你希望了解如何部署合约,可以查看另一篇文章:在truffle中使用infura部署以太坊智能合约。 Infura 提供公开的 Ethereum 主网和测试网络节点。到 Infura 官网申请,只要输入一点基本资料和 Email,就可以收到 API-ke...