vue中引入echarts并实现echarts自适应

vue中引入echarts并实现echarts自适应

在许多项目中需要使用到柱状图、饼状图等,在本篇博客中介绍echarts的自适应。

实现echarts的自适应可以使用window.onresize(),具体操作如下:

npm安装echats:

npm install echarts --save

在使用echarts的页面引入echarts

let echarts = require('echarts/lib/echarts')
//根据需要引入相应图的组件
require('echarts/lib/chart/bar')//柱状图
require("echarts/lib/chart/lines")//折线图
require('echarts/lib/chart/pie')//饼状图
require("echarts/lib/component/toolbox")//上方可以下载图片、刷新等工具栏
require('echarts/lib/component/title')//标题

页面上创建容纳echarts的盒子

<div id="myChart" :style="{width:'100%',height:'600px'}"></div>
<div id="myChartPie" :style="{width:'100%',height:'600px'}"></div>

在js中的操作

//data
data(){
    return {
        myChart: {},
        myChartPie: {}
    }
}
//methods 初始化echarts
methods: {
drawChart() {
    let idx = 1
    let myChart = echarts.init(document.getElementById('myChart'))
    let myChartPie = echarts.init(document.getElementById('myChartPie'))
    myChart.setOption({...})
    myChartPie.setOption({...})
    return { myChart: myChart, myChartPie: myChartPie }
}
//mounted 挂载后执行
mounted() {
        let echarts = this.drawChart()
        this.myChart = echarts.myChart
        this.myChartPie = echarts.myChartPie
        window.onresize = () => {
            // 这里使用箭头函数,避免this指向问题
            this.myChart.resize()
            this.myChartPie.resize()
        }
    }
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值