vue2项目中使用Echarts

vue2项目中使用Echarts

在这里插入图片描述

一 柱状图

(1)要展现的数据:
在这里插入图片描述
(2)使用echarts柱状图来展现
首先创建一个div,指定宽高,该div就是柱状图展现的位置
里插入图片描述
(宽度在 el-card中已经指定过了,因此不需要在div中指定宽)
其次:初始化echarts实例

 var myChart2 = echarts.init(this.$refs.echarts2);
 // this.refs.echarts2 指向ref为echarts2的dom元素

配置数据

let news= userData.map(item=>{return item.new})
//map循环遍历userData数组,拿到每一项中的new值。news=[5,10,12,69,34,51,50]
let actives=userData.map(item=>{return item.active})
myChart2.setOption({
		//xAxis:x轴
        xAxis: {
          data: ["周一", "周二", "周三", "周四", "周五", "周六", "周天"],
        },
        //不用配置y轴,会根据要渲染的数据自动生成
        yAxis: {},
        //要渲染的数据
        series: [
          {
            type: "bar",
            data: news,
          },
          {
            type: "bar",
            data: actives,
          },
        ],
      });

总结:
this.$refs.echarts2: 获取 ref为 echarts2的dom元素
map() 可以循环遍历数组,返回一个新数组。

二 折线图

折线图数据:
在这里插入图片描述
初始化 并配置数据

     //折线图
      //拿到每一个data数据中的每一个key,返回一个数组
      let keys = Object.keys(lineData.data[0]);
      let series = [];
      //遍历关键字数组,在data数组中找到每一个对象里面对应key 的value,放入series中
      keys.forEach((key) => {
        series.push({
          name: key,
          //循环处理数组 map() 会返回一个新数组
          data: lineData.data.map((item) => item[key]),
          type: "line",
        });
      });
      var myChart1 = echarts.init(this.$refs.echarts1);
      myChart1.setOption({
        title: {
          text: "ECharts折线图",
        },
        tooltip: {},
        xAxis: {
          type: "category",
          data: lineData.date,
        },
        yAxis: {
          type: "value",
        },
        series: series,
        //图例
        legend: {
          data: keys,
        },
      });

总结:Object.keys(对象) 返回对象的所有key 构成的数组
forEach() 遍历数组

三 饼状图

  //饼图数据
                videoData:[
                    {
                        name:'小米',
                        value:2999
                    },
                    {
                        name:'苹果',
                        value:5999
                    },
                    {
                        name:'vivo',
                        value:1999
                    },
                    {
                        name:'oppo',
                        value:2999
                    },
                    {
                        name:'魅族',
                        value:2999
                    },
                ],
  //饼状图
      //初始化echarts 实例
      var myChart3 = echarts.init(this.$refs.echarts3);
      myChart3.setOption({
        series: [
          {
            type: "pie",
            data: videoData,
          },
        ],
        //tooltip  配置悬浮提示框
        tooltip: {
          trigger: "item",
        },
      });
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要在Vue项目使用echarts图表,你需要先安装echarts库。可以通过npm或yarn来安装echarts: ```bash npm install echarts --save # 或者 yarn add echarts ``` 然后在Vue组件引入echarts使用它来绘制图表。以下是一个简单的例子: ```vue <template> <div class="chart-container"> <div ref="echarts" class="echarts"></div> </div> </template> <script> import echarts from 'echarts' export default { name: 'EchartsDemo', data() { return { chartData: [ { name: '一月', value: 100 }, { name: '二月', value: 200 }, { name: '三月', value: 300 }, { name: '四月', value: 400 }, { name: '五月', value: 500 }, { name: '六月', value: 600 } ] } }, mounted() { this.drawChart() }, methods: { drawChart() { const chartDom = this.$refs.echarts const chart = echarts.init(chartDom) const option = { xAxis: { type: 'category', data: this.chartData.map(item => item.name) }, yAxis: { type: 'value' }, series: [{ data: this.chartData.map(item => item.value), type: 'bar' }] } chart.setOption(option) } } } </script> <style scoped> .echarts { width: 100%; height: 400px; } </style> ``` 在这个例子,我们在组件的`mounted`生命周期钩子调用了`drawChart`方法来绘制图表。方法首先通过`this.$refs.echarts`获取到一个DOM元素,然后使用`echarts.init`方法初始化echarts实例。接着,我们通过设置`option`对象来定义图表的配置,最后调用`chart.setOption`方法来渲染图表。 上面的例子演示了如何使用echarts来绘制一个简单的柱状图。你可以根据需要调整`option`对象的配置来实现其他类型的图表,例如折线图、饼图等等。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值