canvasで自前でグラフを作成するとき、y軸の値を自動で表示するために書いた。
ざっくり分けて表示するだけだが、とりあえず。
例
グラフの最大値が170→y軸の最大値は200
グラフの最大値が110→y軸の最大値は150
グラフの最大値が101→y軸の最大値は150
(最大値がmaxvalue、整数として判明しているとする)
var graph_y_max,digit;
digit = String(maxvalue).length;
if(Math.round(maxvalue * Math.pow(0.1,digit -1))>maxvalue * Math.pow(0.1,digit-1) )
{
graph_y_max = Math.round(maxvalue * Math.pow(0.1,digit -1)) * Math.pow(10,digit -1) ;
}
else {
graph_y_max = (Math.round(maxvalue * Math.pow(0.1,digit-1))+0.5) * Math.pow(10,digit - 1);
}
2番目の桁を四捨五入して、繰り上がるならその値を使う。
繰り下がるなら、繰り下がった値に5を足す。
0 件のコメント:
コメントを投稿