我哭了,呜呜,,初学就这样被打击了。。。。。
是MATLAB的2014版本的,运行interp插值时说这个函数里面的griddedInterpolant函数出现问题了,运行结果如下:
>> %% 数据插值--interp和interp2函数
h=[20:10:100 200:100:1000 1500 2000:1000:10000];
s=[76 66 59 49 46 43 40 38 22,14 9 6 3.5 2.5 1.4 0.7 0 -1 -3 -8 -7 -2 2 7 9 11 12];
x=20:10:10000;
y1_linear=interp1(h,s,x,'linear');
y2=interp1(h,s,x,'nearest');
y3=interp1(h,s,x,'spline');
y4=interp1(h,s,x,'cubic');
y5=interp1(h,s,x,'v5cubic');
subplot(221);
semilogx(h,s,'ko');hold on;
semilogx(x,y1,'b','linewidth',1.5);
grid on ;xlim([10 10000]);hold off;
title('nearest');
subplot(222);
semilogx(h,s,'ko');hold on;
semilogx(x,y2,'r','linewidth',1.5);
grid on ;xlim([10 10000]);hold off;
title('spline');
subplot(223);
semilogx(h,s,'ko');hold on;
semilogx(x,y3,'r','linewidth',1.5);
grid on ;xlim([10 10000]);hold off;
title('cubic');
subplot(224);
semilogx(h,s,'ko');hold on;
semilogx(x,y4,'r','linewidth',1.5);
grid on ;xlim([10 10000]);hold off;
title('v5cubic');
%绘制曲线
figure
semilogx(h,s,'ko');hold on;
semilogx(x,y1,'r','linewidth',1.5);
grid on ;hold off;
title('linear');
%%
x=-4.4;
y=[0 0.15 1.12 2.36 1.46 0.49 0.06 0];
cs=spline(x,[0 y 0]);
xx=linspace(-4,4,101);
yy=ppval(cs,xx);
yyt=interp1(x,y,xx,'spline');
plot(x,y,'o',xx,yy,'r',xx,yyt,'m','linewidth',1.5);
grid on;
title('a');
错误使用 griddedInterpolant
网格矢量未定义与给定值匹配的点网格。
出错 interp1 (line 183)
F = griddedInterpolant(X,V,method);


雷达卡





京公网安备 11010802022788号







