怎么在vue中是使用echarts

2019-06-05  本文已影响0人  装在壳子里的刺猬

我用的是vs code工具

先在命令行下载echarts插件

npm install echarts --save

在main.js中引用:

import echarts from 'echarts'

Vue.prototype.$echarts = echarts

下来我们就在vue里面可以用了

template里面写,她和我们用的平常的HTML没有什么差别,主要是js

<div id="main" style="height:400px"></div>

script里面的内容比较重要,手机也可以用

内容很长,其实主要就是把drawChart() 方法放在methods里面,在mounted里面调用就可以了。

export default {

  name: "app",

  data(){

      return{}

  },

  methods: {

    drawChart() {

      // 基于准备好的dom,初始化echarts实例

      let myChart = this.$echarts.init(document.getElementById("main"));

      // 指定图表的配置项和数据

      let option = {

            tooltip : {

                trigger: 'axis'

            },

            legend: {

                data:['邮件营销','联盟广告','视频广告','直接访问','搜索引擎']

            },

            toolbox: {

                show : true,

            },

            grid:{

                x:50,

            },

            calculable : true,

            xAxis : [

                {

                    type : 'category',

                    boundaryGap : false,

                    data : ['周一','周二','周三','周四','周五','周六','周日']

                }

            ],

            yAxis : [

                {

                    type : 'value'

                }

            ],

            series : [

                {

                    name:'邮件营销',

                    type:'line',

                    stack: '总量',

                    data:[120, 132, 101, 134, 90, 230, 210]

                },

                {

                    name:'联盟广告',

                    type:'line',

                    stack: '总量',

                    data:[220, 182, 191, 234, 290, 330, 310]

                },

                {

                    name:'视频广告',

                    type:'line',

                    stack: '总量',

                    data:[150, 232, 201, 154, 190, 330, 410]

                },

                {

                    name:'直接访问',

                    type:'line',

                    stack: '总量',

                    data:[320, 332, 301, 334, 390, 330, 320]

                },

                {

                    name:'搜索引擎',

                    type:'line',

                    stack: '总量',

                    data:[820, 932, 901, 934, 1290, 1330, 1320]

                }

            ]

        };

        // 使用刚指定的配置项和数据显示图表。

        myChart.setOption(option);

        setTimeout(function (){

            window.onresize = function () {

                myChart.resize();

            }

        },200)

    }

  },

  mounted() {

    this.drawChart();

  }

};

如果我们是把他放在手机里,那么就要加,上面的我已经写了

 myChart.setOption(option);

        setTimeout(function (){

            window.onresize = function () {

                myChart.resize();

            }

        },200)

但是手机里有时候我们的数据太长就会显示不全,下面这句就可以解决,x越大数据就会往右移动,这样我们就可以自己调了

grid:{

                x:50,

            }

图表位置调节

echarts样式

上一篇 下一篇

猜你喜欢

热点阅读