快速绘制一个基础echarts折线图

1.第一步,获取 Apache ECharts,可以通过npm安装,也可以通过其他方式获取,详情见官网,

//npm安装

npm install echarts

2.创建一个dom元素,必须要有宽高

<div id="myChart" style="height:300px;width:300px"></div>

3.引入echarts

//引入echarts
//如需按需引入的话,可以使用 ECharts 提供的按需引入的接口来打包必须的组件。

import * as echarts from 'echarts';        //全部引入


// 基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById('myChart'));
// 绘制图表
myChart.setOption({
  title: {
    text: 'ECharts 入门示例'
  },
  tooltip: {},

  //x轴数据
  xAxis: {
    data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子']
  },
  yAxis: {},

  //y轴数据
  series: [
    {
      name: '销量',
      // 可以修改图表类型,折线图是line ,柱状图是bar
      type: 'bar',
      data: [5, 20, 36, 10, 10, 20]
    }
  ]
});

4.在页面初始就绘制图表

这样写上去就运行你会发现控制台报错:Initialize failed: invalid dom--无效的dom,这是因为此时dom还没挂载上去,所以此时解决办法是用dom挂载之后的钩子函数里mounted,在 vue3中的钩子函数则是onMounted,

把初始化及绘制图表的整个过程放到钩子函数里

vue3 setup下+ts写法如下

<script setup lang="ts">
import * as echarts from 'echarts';
import { onMounted } from 'vue'


//dom已经挂载的钩子函数
onMounted(() => {
  //获取dom元素,图表初始化
  var myChart = echarts.init(document.getElementById('myChart') as HTMLElement);

  //使用里面的配置项和数据显示图表。
  myChart.setOption({
    //图表标题
    title: {
      text: 'ECharts 入门示例'
    },
    tooltip: {},
    xAxis: {
      data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子']
    },
    yAxis: {},
    series: [
      {
        name: '销量',
        // 可以修改图表类型,折线图是line ,柱状图是bar
        type: 'line',
        data: [5, 20, 36, 10, 10, 20]
      }
    ]
  });
})

此时再重新刷新,浏览器就可以加载出图表啦

如果需要发送请求获取数据的话,那么将发请求写写入钩子函数,然后将初始化图表-绘制图表的整个过程放入一个函数,在接收响应的时候调取绘制图表过程就可以啦

//onMounted
onMounted(() => {
    发请求
    axios({
        url:'',
        method:'',
        data/param:{}
    }).then(res=>{

    //将响应值赋值给对应的x轴y轴数据

    //再调用绘制图表的函数
        myChart()
    })
    
})



const myChart=()=>{
   //获取dom元素,图表初始化
  var myChart = echarts.init(document.getElementById('myChart') as HTMLElement);

  //使用里面的配置项和数据显示图表。
  myChart.setOption({
    //图表标题
    title: {
      text: 'ECharts 入门示例'
    },
    tooltip: {},
    xAxis: {
      data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子']
    },
    yAxis: {},
    series: [
      {
        name: '销量',
        // 可以修改图表类型,折线图是line ,柱状图是bar
        type: 'line',
        data: [5, 20, 36, 10, 10, 20]
      }
    ]
  });

}

详细代码可以看下篇文章XXXXX

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值