task2 用柱状图展示2020年消费额最低的5个省份

<template>
  <div>
    用柱状图展示2020年消费额最低的5个省份
    同时将用于图表展示的数据结构在浏览器的console中进行打印输出
  </div>
  <div id="main"></div>
</template>

<script>
import echarts from '../assets/echarts.min'
import axios from '../assets/axios'

export default {
  mounted() {
    var myChart = echarts.init(document.getElementById("main"));

    axios.post('/api/selectOrderInfo', {
      "startTime": "2023-01-01T00:00:00+0800",
      "endTime": "2023-12-31T23:59:59+0800"
    }).then(response => {
      var data = response.data.data;

      // 按省份统计消费额
      var provinceData = data.reduce((acc, item) => {
        var province = item.provinceName;
        var totalAmount = item.finalTotalAmount;

        acc[province] = (acc[province] || 0) + totalAmount;
        return acc;
      }, {});

      // 将省份消费额数据转换为数组
      var provinceAvg = Object.entries(provinceData)
          .map(([province, avgAmount]) => ({ province, avgAmount }))
          .sort((a, b) => a.avgAmount - b.avgAmount)
          .slice(0, 5);

      // 将省份名称和消费额分别存入两个数组
      var provinces = provinceAvg.map(item => item.province);
      var amounts = provinceAvg.map(item => item.avgAmount);

      // 打印数据结构到console
      console.log('最低的5个省名:', provinces);
      console.log('最低的5个省消费总额:', amounts);

      // 配置图表
      var option = {
        tooltip: {
          trigger: 'axis',
          axisPointer: {
            type: 'shadow'
          }
        },
        title: {
          text: '2023年消费额最低的五个省份',
          left: 'center'
        },
        xAxis: {
          name: '省份',
          type: 'category',
          data: provinces
        },
        yAxis: {
          name: '消费额度/元',
          type: 'value'
        },
        series: [{
          data: amounts,
          type: 'bar'
        }]
      };

      // 设置图表
      myChart.setOption(option);
    });
  }
};
</script>

<style>
#main {
  width: 100%;
  height: 500px;
}
</style>

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值