关于echarts定制曲线Y轴固定算法
直接贴代码
/*Y轴计算
*dataSet 二维数据
*DATAConfig 有效数据长度
*/
function getNumY(dataSet,dataTime,sensorCode,DATAConfig){
var temp = 0;
if(sensorCode == "GNSS"){
temp = 1;
}
var maxN = dataSet[0][0];
var minN = dataSet[0][0];
/*最大、小值*/
for (var i = 0; i < dataSet.length; i++){
for(var j = 0; j < DATAConfig.legendName.length-temp; j++){
if (dataSet[i][j] > maxN){
maxN = dataSet[i][j];
}else if (dataSet[i][j] < minN){
minN = dataSet[i][j];
}
}
}
var numY = null;
if(Math.abs(maxN) > Math.abs(minN)){
numY = maxN*2;
}else{
numY = minN*2;
}
var y = [1,2,3,4,6,9];
numY = Math.ceil(Math.abs(numY));
if(numY <= 1){
numY = 1;
}else{
var pow = parseInt(numY.toString().length)-1;
var divisor = Math.pow(10,pow);
for(var i=0;i<y.length;i++){
if((y[i]*divisor) >= numY){
numY = parseFloat(y[i]*divisor);
break;
};
}
}
return numY;
}
作者只发现Y轴大体适应,并合理分配区间的问题,更多细节,需要开发中不断研究。