最邻近插值法
zi=interp2(x,y,z,xi,yi,'nearest'); mesh(xi,yi,zi)
title('最邻近插值法') xlabel('x'); ylabel('y'); zlabel('z');
C=contourf(xi,yi,zi); clabel(C);
title('等高线图')
立方插值法
zi=interp2(x,y,z,xi,yi,'cubic' ); mesh(xi,yi,zi)
title(' 立方插值法') xlabel('x'); ylabel('y'); zlabel('z');
C=contourf(xi,yi,zi); clabel(C);
title('等高线图')
三次样条插值法
zi=interp2(x,y,z,xi,yi,'spline' ); mesh(xi,yi,zi)
title(' 三次样条插值法') xlabel('x'); ylabel('y'); zlabel('z');
C=contourf(xi,yi,zi); clabel(C);
title('等高线图')
四种差值方法在运算时间和光滑程度上有一定的差异,如下表所示
类别 运算时间 差值方法 最邻近插值法 线性插值法 三次样条插值法 立方插值法
快 稍长 最长 较长 差 稍好 最好 较好 光滑程度 曲线拟合
某年美国旧车价格的调查资料如下表所示,其中下xi表示轿车的使用年数,
yi表示相应的平均价格。试分析用什么形式的曲线来拟合上述的数据,并计算使用4.5年后轿车的平均价格大致为多少?
xi yi
1 2 3 4 5 6 538 7 484 8 290 9 226 10 204 2615 1943 1494 1087 765 方法一
利用1stOpt快速拟合公式搜索可得到公式为:
y = p1+p2*x+p3/x+p4*x^2+p5/x^2+p6*x^3+p7/x^3+p8*x^4+p9/x^4+p10*x^5 p1=18382690.6773727 p2=-4152096.11663013
p3=-51037385.3263795 p4=592195.144413008 p5=84947107.1889704 p6=-51716.5130172659 p7=-75932896.2582835 p8=2521.12152863706 p9=27252247.5649699 p10=-52.482670759974
Matlab代码如下
p1=10802.6249167589; p2=-20010.6348923663; p3=19400.634311511; p4=-10100.4704562703; p5=2958.58084727337; p6=-461.436321152701; p7=21.9610124897453; p8=4.50124440221874; p9=-0.851576261728162; p10=0.0575464303972622; p11=-0.00144545223415816; x=4.5;
y=p1+p2*x+p3*x^2+p4*x^3+p5*x^4+p6*x^5+p7*x^6+p8*x^7+p9*x^8+p10*x^9 +p11*x^10 运行结果: y =
921.1616
方法二
利用matlab拟合
x=[1 2 3 4 5 6 7 8 9 10];