EDA365电子论坛网

标题: 想请问一下这个怎么改 ? [打印本页]

作者: panphp    时间: 2020-6-5 11:37
标题: 想请问一下这个怎么改 ?
  P: H# W1 |# p" {4 w4 v' I( ^  l

  k7 }0 @4 f4 g1 S% tclear;
" u* m; l% u) N( @4 K% U" Zx_len=144;
2 s6 w1 _$ k' fy_len=60;0 s2 L1 a, @8 t4 w1 Q: ?/ P
z_len=17;% a& M. `- [% }- V3 D( w6 B
t_len=854;5 R0 _/ a& e0 f$ c3 Y
z_index=7;
9 ]% F. Q! m$ z% {1 Ax_index=120;- w0 j* c" z. K9 W2 D/ B

. Z3 ~) `6 {( G& f6 }9 d6 A5 ez = ncread('rhum.mon.mean.nc', 'level');%z$ E9 _/ X) u2 i- ~# _- x6 j
y = ncread('rhum.mon.mean.nc', 'lat');%y
# \" T9 M& p% q5 m7 R: m% Nx = ncread('rhum.mon.mean.nc', 'lon');%x
* k- s  L, m3 K# P0 X1 Y4 X8 p& J) z( yt = ncread('rhum.mon.mean.nc', 'time');%t" n' r/ r3 T0 V8 W( Y
rhum = ncread('rhum.mon.mean.nc', 'rhum');
5 C& L2 L4 C' u# K( u) T
1 F. @7 V- X& I% Z; |array = zeros(x_len,y_len);. w$ l. l- s* O1 i" O
for i = 30:y_len- a% E  \# d7 K- b% X3 @0 x1 n
    for j = 1:t_len3 S. [3 |9 v1 q( H& B& S
        array(i,j)=rhum(x_index,i,z_index,j);
" u7 R6 [/ U1 L( d    end
. R  ?; y2 E: g# `# w' y$ tend
& ^, O1 q3 p% e. Ymesh(t,y,array)0 s3 U( f# I6 X; [; ]  D
错误使用 mesh (line 79)
) G4 Q) @: x: V$ j1 h数据维度必须一致。8 Z  d+ A, n: e# I
想请问一下这个怎么改 ?
作者: House    时间: 2020-6-5 13:28
需要先用meshgrid根据横、纵坐标重新生成对应的矩阵2 p9 o9 F. S' z
另外注意循环嵌套的顺序,是Z(jj,ii)而不是Z(ii,jj)6 t. ^; w1 k; W. N& a; |1 D/ T0 l* e- _- g
draw_x = 1:1/4:7;0 \6 P/ |0 _% K5 B
draw_y = 2:1/3:6;" U( N! `/ P) ~2 I" u
f = @(x,y) x.^(exp( -y.^2/50 ));3 `$ g8 W+ s9 Z: t
for ii = 1:1:numel(draw_x)
) L) D- Q) N% J6 z- s' h- U5 V    for jj = 1:1:numel(draw_y); J# P" u* J. c6 `
        Z(jj,ii) = f(draw_x(ii),draw_y(jj));
5 P4 C6 n' Y) X  l# X5 l& X2 ?1 O) S% ^    end( T1 a/ |9 H; b6 M5 R% E8 L; Y- W7 z
end
% J  g5 E  Z# W$ z! v4 O[draw_x,draw_y] = meshgrid(draw_x,draw_y);
0 z2 @, U4 `' T! j; c: y  H* \mesh(draw_x,draw_y,Z);




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2