曲线方程
Equation of curve
知道构成这条曲线的每个点的所有坐标X和Y,是否有可能获得曲线的方程?我认为这是可能的,但如何? (知道不是常规曲线类型:右、抛物线、双曲线...更多类型"snake"绝对不是曲线类型)
点样本:第一列是 X,第二列是 Y
795 365
816 365
24 365
25 365
222 366
312 366
313 366
317 366
318 367
343 367
344 367
669 367
751 368
752 368
763 368
795 368
796 368
814 369
815 369
23 369
313 369
314 369
315 370
316 371
344 372
345 372
您可能不需要曲线,使用 interp1
在数据点之间进行插值的解决方案可能是最好的。特别是正如您所说,您的用例是查看其他点与该数据集的距离。
例如,假设您有两个数据列向量(x
和 y
)。你可以定义一些匿名函数 f
f = @(xin) interp1(x,y,xin);
interp1
有不同的内插(和外推)选项,请参阅 documentation。默认是简单的线性插值,但你可以使用样条等...
然后您可以通过在原始数据范围内提供一个 x
值(例如本例中的 4.2
)来使用它进行插值...
y_interpolated = f(4.2);
基本上将其用作查找 table。
知道构成这条曲线的每个点的所有坐标X和Y,是否有可能获得曲线的方程?我认为这是可能的,但如何? (知道不是常规曲线类型:右、抛物线、双曲线...更多类型"snake"绝对不是曲线类型)
点样本:第一列是 X,第二列是 Y
795 365
816 365
24 365
25 365
222 366
312 366
313 366
317 366
318 367
343 367
344 367
669 367
751 368
752 368
763 368
795 368
796 368
814 369
815 369
23 369
313 369
314 369
315 370
316 371
344 372
345 372
您可能不需要曲线,使用 interp1
在数据点之间进行插值的解决方案可能是最好的。特别是正如您所说,您的用例是查看其他点与该数据集的距离。
例如,假设您有两个数据列向量(x
和 y
)。你可以定义一些匿名函数 f
f = @(xin) interp1(x,y,xin);
interp1
有不同的内插(和外推)选项,请参阅 documentation。默认是简单的线性插值,但你可以使用样条等...
然后您可以通过在原始数据范围内提供一个 x
值(例如本例中的 4.2
)来使用它进行插值...
y_interpolated = f(4.2);
基本上将其用作查找 table。