clc全部清除;
x = 0:10;
y = sin(x);
Xi = 0:0.25:10;
%將插值方法定義為單元格數組。
strmod={ '最近','線性','樣條','立方' };
%將圖標定義為單元格數組。
str1b={'(a)方法=最近','(b)方法=線性',...
(c)方法=樣條','(d)方法=三次' };
圖(1);
因為i=1:4
yi=interp1(x,y,,strmod { I });
圖(1);
支線劇情(2,2,I);
plot(x,y,' ro ',,yi,' b '),xlabel(str 1b(I));
title(strmod{i},' FontWeight ',' Bold ');
結束
%示例2:三次樣條插值
x0 = 0:10;
y0 = sin(x0);
x = 0:. 25:10;
y=spline(x0,y0,x);
圖(2);
plot(x0,y0,'或',x,y,' k ');
title('spline ',' FontWeight ',' Bold ');
%與interp1相同。
% 2.2D插值
%用於圖形圖像處理和三維曲線擬合等領域,由interp2實現。壹般格式是:
% zi = interp2 (x,y,z,,yi,method) x,y-壹個大小相同的獨立變量數組。
% xi,yi-插值點的獨立變量數組
% Method—插值方法選項,4種。
% *最近點插值:method =' nearest '
% *線性插值:method =' linear '該方法是interp2函數的默認方法。
% *三次樣條插值:method =' spline '
% *立方插值:method =' pchip '或' cubic '
%例:二維插值的四種方法比較。
clc全部清除;
[x,y,z]= peaks(7);
圖(三)
網格(x,y,z);
標題(' Origin ',' FontWeight ',' Bold ');
[xi,易]=meshgrid(-3:0.2:3,-3:0.2:3);
z1=interp2(x,y,z,,yi,'最近');
z2=interp2(x,y,z,,yi,'線性');
z3=interp2(x,y,z,,yi,'樣條');
z4=interp2(x,y,z,,yi,'立方');
圖(4)
支線劇情(2,2,1)
網格(,易,z1)
標題('最近',' FontWeight ',' Bold ');
次要情節(2,2,2)
網格(xi、易、z2)
標題(' linear ',' FontWeight ',' Bold ');
次要情節(2,2,3)
網格(xi、易、z3)
title(' spine ',' FontWeight ',' Bold ');
次要情節(2,2,4)
網格(,易,z4)
標題('立方',' FontWeight ',' Bold ');結果