不均匀坐标轴源数据中最大数据小于1亿时,Y轴显示错误

https://blog.csdn.net/s_y_w123/article/details/109801701
上述地址提到的不均匀坐标轴,有个问题,当sourceData中最大的数小于1亿时,Y轴刻度显示就乱套了。

首先,问题出在寻找数据间隔最大只和最小值上面,我的数据间隔划分存在刻意行为(根据已知数据进行的间隔划分)。而当你使用我的数据,且数据间隔划分较小时,我的代码中的 const min_v = Math.max(...dataInterval.filter(v => v <= amount)); 和 const max_v = Math.min(...dataInterval.filter(v => v > amount));就会造成 Math.max() 和 Math.min() 的情况,因为 filter 比较过滤出来的数据时一个空数组,扩展运算符对一个空数组进行扩展时什么也扩展不出来,就导致 min 和 max 没有参数,所以就会返回 Infinity 和 -Infinity,这就直接导致了 const y_value = (((amount - min_v) / (max_v - min_v)) * 10) + index * 10; 计算显示位置时的错误。