1

让我以此作为开头,无论如何我都不是数学高手。我有兴趣将像单调样条函数这样的曲线拟合到我的数据中。

我试图让这个 Javascript 版本的单调样条函数工作,但无法弄清楚如何正确调用该函数。具体来说,代码的开头是这样开始的(我以前从未见过以这种方式命名的函数):

var CubicSpline, MonotonicCubicSpline;
MonotonicCubicSpline = function() {
  function MonotonicCubicSpline(x, y) { 

对我来说,相同的功能在两个不同的范围内定义。第一个不带任何参数,第二个不带任何参数。你如何解决这个问题?

我开始只是提供我想要适合的点:

MonotonicCubicSpline([0,5,10,15,20,25], [0,6,2,6,7,10])

但是函数的那部分没有返回任何东西,好像我需要调用上面同名的函数。如果你想测试一下,这里有一个 jsfiddle 链接:

http://jsfiddle.net/SszKr/7/

任何帮助将不胜感激!谢谢!

该功能的功劳归于: http: //blog.macerron.com/2011/01/01/javascript-cubic-splines/

4

1 回答 1

3

MonotonicCubicSpline函数声明中,我们可以看到原型中添加了一个插值函数,并且构造函数没有返回任何内容。

所以你必须声明一个新的MonotonicCubicSpline然后使用它的插值函数。

例子:

var mySpline = new MonotonicCubicSpline([0,5,10,15,20,25], [0,6,2,6,7,10]);
console.log(mySpline.interpolate(3));

我不确定,但我认为插值函数参数是横坐标。

于 2013-04-18T13:01:40.700 回答