在MATLAB中,可以使用interp1函數(shù)對(duì)一組數(shù)進(jìn)行插值。
語(yǔ)法如下:
yi = interp1(x, y, xi, method)
參數(shù)說(shuō)明:
x:表示給定的一組數(shù)的橫坐標(biāo),是一個(gè)向量。
y:表示給定的一組數(shù)的縱坐標(biāo),也是一個(gè)向量,長(zhǎng)度與x相同。
xi:表示要進(jìn)行插值的點(diǎn)的橫坐標(biāo),也是一個(gè)向量。
method:表示插值的方法,可以為’linear’(線性插值)或’spline’(樣條插值)。
示例代碼:
x = [1, 2, 3, 4, 5];
y = [2, 4, 1, 6, 3];
xi = 1:0.1:5;
yi = interp1(x, y, xi, 'spline');
plot(x, y, 'o', xi, yi, '-')
這段代碼中,給定了一組數(shù)的橫坐標(biāo)x和縱坐標(biāo)y,然后定義了要進(jìn)行插值的點(diǎn)的橫坐標(biāo)xi,并使用’spline’方法進(jìn)行插值。最后使用plot函數(shù)繪制了原始數(shù)據(jù)點(diǎn)和插值后的曲線。
注意:給定的橫坐標(biāo)x必須是遞增的,否則需要先對(duì)x和y進(jìn)行排序。