/**
* 計算Y軸的最大值
*
* @param yMaxTemp 數(shù)據(jù)源中的最大值
* @return 計算后返回的比例尺
*/
private int getYMaxValue(float yMaxTemp) {
//1.5f 這里的系數(shù)可以自己去改變
yMaxTemp = yMaxTemp * 1.5f;
//yMaxTemp 以10為底的對數(shù)
int logN = (int) Math.log10(yMaxTemp);
//計算最大的除數(shù)(比如2100,此處計算的數(shù)是1000)
int mutiN = (int) Math.pow(10, logN);
//求最大位余數(shù)
int offset = (int) (yMaxTemp % mutiN);
int num = 0;
//求Y軸的最大位的值
if (offset == 0) {
num = (int) (yMaxTemp / mutiN + 1);
} else {
num = (int) Math.ceil( yMaxTemp / mutiN);
}
//yMax小于10的取10
// 大于10的=最大位的值*10的logN次方
return num * mutiN < 10 ? 10 : num * mutiN;
}