2011-12-24 138 views
0

这是sandboxhttp://jsfiddle.net/qeyqe/)。
这是我期望说的一个美丽的picture“垂直拉伸图”。垂直拉伸图形

所以,我为我的图形和100像素高度的画布创建了一个点阵。我的图形的最大值和最小值分别是84(0.8425)和44(0.439) - 因此,图形的高度范围是40像素(84 - 44)。但是我需要拉伸这张图,所以它需要整个100像素的高度范围 - 我需要将值“84”转换为100,并将值“44”转换为0;其他中间值也需要进行转换(拉伸)以适应新的0-100像素范围,而不是老的0-40像素(见上图)。

所以,主要的问题不是如何“缩放”图形,而是如何垂直“伸展”。

回答

3

您可以直接在你的代码通过更换线

value = Math.round(ratesValues[i] * 100); 

与以下行拉伸值:

min = 0.439; 
max = 0.8425; 

value = Math.round((ratesValues[i]-min)/(max-min)*100); 

您可以更改号码0.4390.8425,以反映实际的最小和最大的图形。

+0

Iiiihaaaa!是!谢谢! – artuska 2011-12-24 22:11:33