vue2_echarts安装使用

简介: vue2_echarts安装入门

npm安装

在vue的项目中使用npm安装

$ npm install echarts --save

在main.js中导入echarts

import * as echarts from 'echarts';
Vue.prototype.$echarts = echarts

image.png

常见错误

Initialize failed: invalid dom
dom没有初始化,echart的实例执行早了,可以先初始化dom然后在函数中调用echart实例。
例:使用echart制作一个柱状图
vue声明方法

methods: {
   
   
    echartfunc: function (o) {
   
   
      // 基于准备好的dom,初始化echarts实例
      var myChart = echarts.init(document.getElementById("echart2"));
      // 绘制图表
      myChart.setOption({
   
   
        title: {
   
   
          text: "ECharts 柱状图测试",
        },
        tooltip: {
   
   },
        xAxis: {
   
   
          data: ["yma16","法外狂徒", "张三", "李四", "maletingda", "echart"],
        },
        yAxis: {
   
   },
        series: [
          {
   
   
            name: "体重",
            type: "bar",
            data: [45, 50, 48, 43, 60, 65],
          },
        ],
      });
    }
 }

vue的template模板中

<button @click="echartfunc">测试柱状图</button>
    <div
    id="echart2" style="width: 1920px; height: 600px; background-color: bisque" >
    </div>

效果
1.gif

数据加载、更新

思考:数据加载通过setOption
更新:使用setTimeOut不断循环调用echart的setOption达到循环渲染的效果。
例:柱状图添加数据
函数声明

export default {
   
   
  name: "echart01",
  data() {
   
   
    return {
   
   
      data:{
   
   
          x:["yma16","法外狂徒", "张三", "李四", "maletingda", "echart"],
          y:[45, 50, 48, 43, 60, 65]
      },
      msg: "echart 柱状图测试",
      insert_x:'',//插入横坐标 数据 使用
      insert_y:''
    };
  },
  methods: {
   
   
      insert:function(){
   
   
          this.data.x.push(this.insert_x);
          this.data.y.push(this.insert_y);
          console.log(this.data)
          setTimeout(this.update,1000);//1s刷新一次
      },
      update:function(){
   
   
          setTimeout(this.echartfunc,1000);//1s刷新一次
      },
      echartfunc: function (o) {
   
   
      // 基于准备好的dom,初始化echarts实例
      var myChart = echarts.init(document.getElementById("echart2"));
      // 绘制图表
      myChart.setOption({
   
   
        title: {
   
   
          text: "ECharts 柱状图测试",
        },
        tooltip: {
   
   },
        xAxis: {
   
   
          data: ["yma16","法外狂徒", "张三", "李四", "maletingda", "echart"],
        },
        yAxis: {
   
   },
        series: [
          {
   
   
            name: "体重",
            type: "bar",
            data: [45, 50, 48, 43, 60, 65],
          },
        ],
      });
    }
 }

效果
2.gif

dataset管理数据

dataset支持单独的数据集声明,数据被多个组件复用,利于数据的输入
对比

  • 旧版本数据声明,数据分散
option = {
   
   
    xAxis: {
   
   
        type: 'category',
        data: ['Matcha Latte', 'Milk Tea', 'Cheese Cocoa', 'Walnut Brownie']
    },
    yAxis: {
   
   },
    series: [
        {
   
   
            type: 'bar',
            name: '2015',
            data: [89.3, 92.1, 94.4, 85.4]
        },
        {
   
   
            type: 'bar',
            name: '2016',
            data: [95.8, 89.4, 91.2, 76.9]
        },
        {
   
   
            type: 'bar',
            name: '2017',
            data: [97.7, 83.1, 92.5, 78.1]
        }
    ]
}
  • dataset,数据合并
    var option = {
   
   
    legend: {
   
   },
    tooltip: {
   
   },
    dataset: {
   
   
        source: [
            ['product', '2012', '2013', '2014', '2015'],
            ['Matcha Latte', 41.1, 30.4, 65.1, 53.3],
            ['Milk Tea', 86.5, 92.1, 85.7, 83.1],
            ['Cheese Cocoa', 24.1, 67.2, 79.5, 86.4]
        ]
    },
    xAxis: [
        {
   
   type: 'category', gridIndex: 0},
        {
   
   type: 'category', gridIndex: 1}
    ],
    yAxis: [
        {
   
   gridIndex: 0},
        {
   
   gridIndex: 1}
    ],
    grid: [
        {
   
   bottom: '55%'},
        {
   
   top: '55%'}
    ],
    series: [
        // 这几个系列会在第一个直角坐标系中,每个系列对应到 dataset 的每一行。
        {
   
   type: 'bar', seriesLayoutBy: 'row'},
        {
   
   type: 'bar', seriesLayoutBy: 'row'},
        {
   
   type: 'bar', seriesLayoutBy: 'row'},
        // 这几个系列会在第二个直角坐标系中,每个系列对应到 dataset 的每一列。
        {
   
   type: 'bar', xAxisIndex: 1, yAxisIndex: 1},
        {
   
   type: 'bar', xAxisIndex: 1, yAxisIndex: 1},
        {
   
   type: 'bar', xAxisIndex: 1, yAxisIndex: 1},
        {
   
   type: 'bar', xAxisIndex: 1, yAxisIndex: 1}
    ]
}

对象数组格式

option = {
   
   
    legend: {
   
   },
    tooltip: {
   
   },
    dataset: {
   
   
        // 用 dimensions 指定了维度的顺序。直角坐标系中,
        // 默认把第一个维度映射到 X 轴上,第二个维度映射到 Y 轴上。
        // 如果不指定 dimensions,也可以通过指定 series.encode
        dimensions: ['product', '2015', '2016', '2017'],
        source: [
            {
   
   product: 'Matcha Latte', '2015': 43.3, '2016': 85.8, '2017': 93.7},
            {
   
   product: 'Milk Tea', '2015': 83.1, '2016': 73.4, '2017': 55.1},
            {
   
   product: 'Cheese Cocoa', '2015': 86.4, '2016': 65.2, '2017': 82.5},
            {
   
   product: 'Walnut Brownie', '2015': 72.4, '2016': 53.9, '2017': 39.1}
        ]
    },
    xAxis: {
   
   type: 'category'},
    yAxis: {
   
   },
    series: [
        {
   
   type: 'bar'},
        {
   
   type: 'bar'},
        {
   
   type: 'bar'}
    ]
};

image.png

效果
3.gif

目录
相关文章
|
6月前
|
JavaScript
vue2_echarts安装使用_入门
vue2_echarts安装使用_入门
36 1
|
1月前
|
小程序 前端开发 JavaScript
微信小程序图表制作利器:ECharts组件的使用与技巧
微信小程序图表制作利器:ECharts组件的使用与技巧
51 1
|
28天前
|
JavaScript
vue中使用echarts绘制双Y轴图表时,刻度没有对齐的两种解决方法
vue中使用echarts绘制双Y轴图表时,刻度没有对齐的两种解决方法
184 0
|
2月前
|
Web App开发 数据可视化 前端开发
Echart的使用初体验,Echarts的基本使用及语法格式,简单图表绘制和使用及图例添加【学习笔记】
本文介绍了ECharts的基本使用和语法格式,包括如何引入ECharts、创建容器、初始化echarts实例对象、配置option参数和一些基础图表的绘制方法。文章还提供了简单图表绘制和使用图例添加的示例代码,以及对ECharts特性和优势的概述。
Echart的使用初体验,Echarts的基本使用及语法格式,简单图表绘制和使用及图例添加【学习笔记】
|
3月前
|
小程序 JavaScript
微信小程序使用echarts图表(ec-canvas)
这篇文章介绍了在微信小程序中使用`ec-canvas`集成echarts图表的方法,包括解决加载时报错的问题、配置图表组件、以及在小程序页面中引入和使用这些图表组件的步骤。
456 1
微信小程序使用echarts图表(ec-canvas)
|
3月前
|
前端开发 数据可视化 JavaScript
Echarts如何实现多图表缩放和自适应?附源码
Echarts如何实现多图表缩放和自适应?附源码
Echarts如何实现多图表缩放和自适应?附源码
|
3月前
|
XML SQL JavaScript
在vue页面引入echarts,图表的数据来自数据库 springboot+mybatis+vue+elementui+echarts实现图表的制作
这篇文章介绍了如何在Vue页面中结合SpringBoot、MyBatis、ElementUI和ECharts,实现从数据库获取数据并展示为图表的过程,包括前端和后端的代码实现以及遇到的问题和解决方法。
在vue页面引入echarts,图表的数据来自数据库 springboot+mybatis+vue+elementui+echarts实现图表的制作
|
3月前
Echarts——如何默认选中图表并显示tooltip
Echarts——如何默认选中图表并显示tooltip
59 1
|
3月前
|
JavaScript
Echarts——VUE中非根节点时不显示图表也无报错
Echarts——VUE中非根节点时不显示图表也无报错
38 1
|
4月前
|
开发框架 前端开发 JavaScript
循序渐进VUE+Element 前端应用开发(10)--- 基于vue-echarts处理各种图表展示
循序渐进VUE+Element 前端应用开发(10)--- 基于vue-echarts处理各种图表展示

相关实验场景

更多