%分别用分段线性插值、此次方程式插值和样条插值确定插值函数并进行比较
%月儿半弯
x=0:10;
y=cos(x);
xi=0:.25:10;
y0=cos(xi);
%精确值 y1=interp1(x,y,xi); %线性插值结果
y2=interp1(x,y,xi,\'cubic\'); %三次方程式插值结果
y3=interp1(x,y,xi,\'spline\'); %样条插值结果
subplot(2,2,1);
plot(xi,y0,\'or\',xi,y1,xi,y2,\'-.b\',xi,y3,\'*g\');
title(\'interp1 一维插值\');
xlabel(\'x\');
ylabel(\'y\');
axis([1 10 -2 2])
legend(\'y1\',\'y2\',\'y3\');
grid
%原图与线性插值的差图结果
subplot(2,2,2);
plot(xi,y0-y1);
axis([1 10 -0.2 0.2])
title(\'原图与线性插值的差图结果\');
grid
%原图三次方程式插值的差图结果
subplot(2,2,3);
plot(xi,y0-y2);
axis([1 10 -0.2 0.2])
title(\'原图与三次方程式插值的差图结果\');
grid
%原图样条插值的差图结果
subplot(2,2,4);
plot(xi,y0-y3);
axis([1 10 -0.2 0.2])
title(\'原图与样条插值的差图结果\');
grid