echarts多条折线图展示不一样的单位变化

本文介绍如何在Echarts的多条折线图中,根据数据大小显示不同的单位,如万元、亿元等。通过在tooltip的formatter中进行处理,实现动态单位展示。
部署运行你感兴趣的模型镜像

最近接了个需求:
在多个折线图中要每条数据

  1. 一万以下显示(元)
  2. 一万以上显示(万元)
  3. 一亿显示亿元 (亿元)
    在这里插入图片描述

在tooltip中加上formatter即可

tooltip: {
            trigger: 'axis',
            // formatter: '{a0}: {c0}元<br />{a1}: {c1}元<br />{a2}: {c2}元'
            formatter: function (c) {
              let one = {};
              let two = {};
              let three = {};
              c.forEach((item,index)=>{
                switch (index){
                  case 0:
                    if (item.value >= 100000000) {
                        one.format = '亿元';
                        one.value = item.value/100000000
                    } else if (item.value >= 10000) {
                        one.format = '万元';
                        one.value = item.value/10000
                    } else {
                        one.format = '元';
                        one.value = item.value
                    }
                    one.seriesName = item.seriesName
                    break;
                  case 1:
                     if (item.value >= 100000000) {
                        two.format = '亿元';
                        two.value = item.value/100000000
                    } else if (item.value >= 10000) {
                        two.format = '万元';
                        two.value = item.value/10000
                    } else {
                        two.format = '元';
                        two.value = item.value
                    }
                    two.seriesName = item.seriesName
                    break;
                  case 2:
                     if (item.value >= 100000000) {
                        three.format = '亿元';
                        three.value = item.value/100000000
                    } else if (item.value >= 10000) {
                        three.format = '万元';
                        three.value = item.value/10000
                    } else {
                        three.format = '元';
                        three.value = item.value
                    }
                    three.seriesName = item.seriesName
                    break;
                };
              })
              return one.seriesName+': '+one.value+one.format+'<br />'+two.seriesName+': '+two.value+two.format+'<br />'+three.seriesName+': '+three.value+three.format
                
            },
        },

这个代码还是有问题,但是思路是对的,所以在经过优化与合并之后,最终版长这样

tooltip: {
    trigger: 'axis',
    // formatter: '{a0}: {c0}元<br />{a1}: {c1}元<br />{a2}: {c2}元'
    formatter: function (c) {
      let str = '';
      c.forEach((item)=>{
        let temp = {};
        if (item.value >= 100000000) {
            temp.format = '亿元';
            temp.value = item.value/100000000
        } else if (item.value >= 10000) {
            temp.format = '万元';
            temp.value = item.value/10000
        } else {
            temp.format = '元';
            temp.value = item.value
        }
        temp.seriesName = item.seriesName
        str += temp.seriesName+': '+temp.value+temp.format+'<br />'
      })
      return str
    },
}

您可能感兴趣的与本文相关的镜像

Yolo-v8.3

Yolo-v8.3

Yolo

YOLO(You Only Look Once)是一种流行的物体检测和图像分割模型,由华盛顿大学的Joseph Redmon 和Ali Farhadi 开发。 YOLO 于2015 年推出,因其高速和高精度而广受欢迎

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值