echart图数据取最大值避免顶行

  selectMax(arr,ten,digit) {
    //arr,传过来的数组,ten个位数超过5后对十位上的修改ten(传1就是加十,传2就是加二十),digit小于5对个位修改(传多少就加多少)默认就是(1和5)
      ten=ten?ten:1;
      digit=digit?digit:5;
      let val = [];
      arr.forEach(item => {
        val.push(item);
      })
      //获取数组中最大的数
      let slefMax = Math.max(...val);
      //获取数组最大数据的长度
      let len = String(slefMax).length;
      if (len == 1) {
        //如果长度为1;最大值就为10
        slefMax = 10
      } else if (len == 2) {
        //长度为2时截取个位数/10位数
        let ones = String(slefMax).slice(1,)
        let other = String(slefMax).slice(0, 1)
        if (ones >= 5) {
          //个位数大于5十位数加一
          slefMax = (other * 1 + ten*1) * 10
        } else {
          //小于五最大值就十位数拼接5
          slefMax = other * 10 + digit*1
        }
      } else if (len > 2) {
        //同理
        let ones = String(slefMax).slice(len - 1,);
        let tens = String(slefMax).slice(len - 2, len - 1);
        let other = String(slefMax).slice(0, len - 2)
        if (ones >= 5) {
          slefMax = other.concat(String((tens * 1 + ten*1) * 10))
        } else {
          slefMax = other.concat(String(tens * 10 + digit*1))
        }
      }
      return slefMax
    },

如果想用里面的数的话可以let max=this.selectMax(arr);//就可获取

当然还有很大优化空间,但是我目前用的就这么多,所以就没有继续优化,如果有好的想法可以私信我。共同进步当然是最好的,处理的图入下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值