matlab 曲面拟合 NaN问题

clear;
U=[0 10 20 30 50 100];
V=[1.5:0.5:10];
Z=[0 0 0 0 0 0 ;
0 0.11627907 0.23255814 0.348837209 0.465116279 0.581395349 ;
0 0.340909091 0.511363636 0.681818182 0.852272727 1.022727273 ;
0 0.813953488 1.162790698 1.511627907 1.627906977 1.744186047 ;
0 1.193181818 1.704545455 2.301136364 2.556818182 2.727272727 ;
0 1.860465116 2.325581395 3.255813953 3.488372093 3.953488372 ;
0 2.215909091 2.897727273 3.835227273 4.6875 5.795454545 ;
0 2.790697674 3.488372093 4.418604651 5.813953488 7.441860465 ;
0 3.323863636 4.346590909 5.625 7.159090909 9.801136364 ;
0 3.837209302 5.23255814 6.511627907 8.372093023 11.27906977 ;
0 4.517045455 6.221590909 7.755681818 10.14204546 13.63636364 ;
0 5.11627907 6.860465116 8.604651163 11.51162791 15.23255814 ;
0 5.625 7.670454545 9.715909091 12.86931818 17.30113636 ;
0 6.046511628 8.372093023 10.58139535 13.8372093 18.72093023 ;
0 6.5625 9.119318182 11.59090909 15.34090909 20.625 ;
0 6.976744186 9.651162791 12.20930233 15.93023256 21.62790698 ;
0 7.5 10.48295455 13.125 17.04545455 23.26704546 ;
0 7.558139535 10.81395349 13.37209302 17.20930233 24.76744186 ;];
[X,Y]=meshgrid(U,V)
[XI,YI]=meshgrid(1.5:0.1:10,0:1:100)
ZI=interp2(X,Y,Z,XI,YI);
figure(1)
surf(XI,YI,ZI)
p=polyfit2d(XI,YI,ZI,3,3);
figure(2)
datafit=polyval2d(p,XI,YI);
surf(XI,YI,datafit)

得出来的图形与原始数据直接画出来的曲面有天壤之别
ZI的数据为什么出现好多NaN?
谢谢!
我的积分有限,只能给这么多了。

clc;clear
U=[0 10 20 30 50 100];
V=[1.5:0.5:10];
Z=[0 0 0 0 0 0 ;
0 0.11627907 0.23255814 0.348837209 0.465116279 0.581395349 ;
0 0.340909091 0.511363636 0.681818182 0.852272727 1.022727273 ;
0 0.813953488 1.162790698 1.511627907 1.627906977 1.744186047 ;
0 1.193181818 1.704545455 2.301136364 2.556818182 2.727272727 ;
0 1.860465116 2.325581395 3.255813953 3.488372093 3.953488372 ;
0 2.215909091 2.897727273 3.835227273 4.6875 5.795454545 ;
0 2.790697674 3.488372093 4.418604651 5.813953488 7.441860465 ;
0 3.323863636 4.346590909 5.625 7.159090909 9.801136364 ;
0 3.837209302 5.23255814 6.511627907 8.372093023 11.27906977 ;
0 4.517045455 6.221590909 7.755681818 10.14204546 13.63636364 ;
0 5.11627907 6.860465116 8.604651163 11.51162791 15.23255814 ;
0 5.625 7.670454545 9.715909091 12.86931818 17.30113636 ;
0 6.046511628 8.372093023 10.58139535 13.8372093 18.72093023 ;
0 6.5625 9.119318182 11.59090909 15.34090909 20.625 ;
0 6.976744186 9.651162791 12.20930233 15.93023256 21.62790698 ;
0 7.5 10.48295455 13.125 17.04545455 23.26704546 ;
0 7.558139535 10.81395349 13.37209302 17.20930233 24.76744186 ;];
[X,Y]=meshgrid(U,V)
[XI,YI]=meshgrid(0:1:100,1.5:0.1:10)%NaN问题出现在这里,换一下位置即可。
ZI=interp2(X,Y,Z,XI,YI);
figure(1)
surf(XI,YI,ZI)
p=polyfit2d(XI,YI,ZI,3,3);%这个是什么意思?
figure(2)
datafit=polyval2d(p,XI,YI);
surf(XI,YI,datafit)
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-09-04
polyfit2d是什么,怎么在帮助里都查不到
第2个回答  2009-09-03
p=polyfit2d(XI,YI,ZI,3,3);
polyfit2d是不是有问题??????????

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网