使用applet在java中绘制数学函数

时间:2012-07-14 04:52:04

标签: java

我在我的java书中使用这个例子,它应该是一个数学函数的图形并且它确实有效,但我不理解最后两行,有人可以向我解释它们吗?假设data是一个双精度数组并保存某个'范围'的函数值,在这种情况下,范围是-pi到pi。

这本书对这一小段代码有一个评论,我知道它在做什么,但我想知道为什么我们在这个循环中做最后两行。

// Scale and translate data values
for (int i = 0; i < d.width; i++) {
        double value = data[i];
        double k = (value - min) / (max - min);
        data[i] = d.height * (1 - k);
    }
有人可以帮帮我吗?

1 个答案:

答案 0 :(得分:2)

不确定。为了绘制图形,需要缩放函数的y值,使得它们适合于它们被绘制的区域的高度。因此ky的缩放版本,其范围为0到1 - 也就是说,最小值将映射为0,最大值将映射为1.最后,找到通过将k转换为0到d.height之间的值来绘制数据。