Surface plot error for Z must be a matrix, not a scalar or vector
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
function polar3D(theta,phi,f)
f = abs(f);
f = f/max(max(f));
[x,y,z] = sph2cart(f,theta,phi);
[N,M] = size(x);
color = ones(N,M);
surf(x,y,z,color);
Just don't know how to make z a matrix after sph2cart
0 comentarios
Respuestas (2)
Walter Roberson
el 27 de Sept. de 2021
careful, x is (eventually) going to be 3d, and the way you use size is wrong for 3d.
I have seen cases where z was returned as an unexpected number of dimensions when phi was scalar.
Matt J
el 27 de Sept. de 2021
Editada: Matt J
el 27 de Sept. de 2021
Just don't know how to make z a matrix after sph2cart
z will be a matrix if at least one of the inputs f, theta and phi are matrices. This should be the case, otherwise you haven't generated samples that cover a 2D surface.
1 comentario
Walter Roberson
el 28 de Sept. de 2021
Editada: Walter Roberson
el 28 de Sept. de 2021
I have seen x, y come out 2d but z come out vector. But I have also seen z come out as matrix. I did not track down the conditions
Ver también
Categorías
Más información sobre Surface and Mesh Plots en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!