gusucode.com > 《精通matlab 7》包括配套光盘 > 配套光盘里的程序附件/Ex-16/Ex1606.m

    %例16-6 二维插值方法效果比较
[x,y] = meshgrid(-3:1:3);	%产生已知数据栅格点
z = peaks(x,y);	%计算已知点上的函数值
surf(x,y,z)	%画基于已知数据点的三维表面图,如图16-8
title('graphic based on original data')		%对图形加标题
[xi,yi] = meshgrid(-3:0.25:3);	%产生更精细的插值栅格点
zi1 = interp2(x,y,z,xi,yi,'nearest');
surf(xi,yi,zi1)	%画基于最邻近法插值的三维表面图,如图16-9
title('nearest-interpolation method')
zi2 = interp2(x,y,z,xi,yi,'linear');
surf(xi,yi,zi2)		%画基于二维分段线性插值的三维表面图,如图16-10
title('linear-interpolation method')
zi3 = interp2(x,y,z,xi,yi,'cubic');
surf(xi,yi,zi3)		%画基于二维三次多项式插值的三维表面图,如图16-11
title('cubic-interpolation method')