(Answers Dev) Restored edit
Info
This question is locked. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.
plotting four variable using meshgrid for 3 variables, but i am getting error
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Zahid
am 31 Aug. 2023
Locked: Rena Berman
am 5 Jun. 2024
t=0.2;
p=1;
for kx = -3:.1:3
q=1;
for ky = -3:.1:3
r=1;
for kz = -3:.1:3
energy_ary(p,q)= -2*t*(cos(kx)+cos(ky)+cos(kz));
z_ary(r)= kz;
r=r+1;
end
y_ary(q)= ky;
q=q+1;
end
x_ary(p)=kx;
p=p+1;
end
x = x_ary ;
y = y_ary ;
z = z_ary ;
[XX,YY,ZZ] = meshgrid(x,y,z);
EE = energy_ary' ;
surf(XX,YY,ZZ,EE) ;
hold all
1 Kommentar
Akzeptierte Antwort
Walter Roberson
am 31 Aug. 2023
meshgrid with 3 inputs always returns 3 dimensional outputs (unless the third input just happens to be scalar.) So your XX, YY, and ZZ are all going to be 3D. But surf() requires that the first two coordinate systems be either vector or 2D, and that the third coordinates be 2D.
surf() is not suitable for creating 3D cuboid volumes with a value for each interior voxel.
If you have three independent input variables and one dependent output variable, then you should consider: slice or isosurface or volshow
1 Kommentar
Weitere Antworten (0)
This question is locked.
Siehe auch
Kategorien
Mehr zu Lighting, Transparency, and Shading 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!