3D surface plotting. Error (z must be a matrix)
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
x_length=50;
for y_length=0:200;
z_length=y_length;
%[z,y]=meshgrid(z_length,y_length);
%i=0:200;
Hyp1=sqrt((x_length.^2)+(y_length.^2));
Hyp2=sqrt((Hyp1.^2)+(z_length.^2));
ctheta_i=y_length/Hyp2;
Lang_walldb=20*(1-ctheta_i).^2;
surf(Lang_walldb)
grid on
xlabel('y length');
ylabel('z length ');
zlabel('angular loss')
hold on
set(gca,'View',[-29,-22]);
end
2 Kommentare
madhan ravi
am 12 Apr. 2019
you never seem to use z & y after meshgrid() call , re-examine why you used it in the first place
Walter Roberson
am 12 Apr. 2019
Nothing in your calculation is a vector, let alone a matrix. Your Lang_walldb is always going to be a scalar at the point you do the surf()
Akzeptierte Antwort
KSSV
am 12 Apr. 2019
Bearbeitet: KSSV
am 12 Apr. 2019
x_length=0:50;
y_length=0:200 ;
[x_length,y_length] = meshgrid(x_length,y_length);
Hyp1=sqrt((x_length.^2)+(y_length.^2));
Hyp2=sqrt((Hyp1.^2)+(y_length.^2));
ctheta_i=y_length./Hyp2; % edited as suggested my Madhan Ravi
Lang_walldb=20*(1-ctheta_i).^2;
surf(Lang_walldb)
shading interp
grid on
xlabel('y length');
ylabel('z length ');
zlabel('angular loss')
hold on
set(gca,'View',[-29,-22]);
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Annotations finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!