ERROR: Z must be a matrix, not a scalar or vector

1 Ansicht (letzte 30 Tage)
David Miller
David Miller am 27 Jul. 2016
Beantwortet: John D'Errico am 27 Jul. 2016
Grid = linspace(0,2*pi);
xAxis = (prams.Radius + prams.radius*cos(Grid)).*cos(Grid);
yAxis = (prams.Radius + prams.radius*cos(Grid)).*sin(Grid);
zAxis = prams.radius.*sin(Grid);
surf(xAxis,yAxis,zAxis);
hold on;
Why is it throwing the error: Z must be a matrix,not a scalar or vector

Akzeptierte Antwort

John D'Errico
John D'Errico am 27 Jul. 2016
READ THE ERROR MESSAGE.
What is the variable grid? (Hint, a vector)
What shape are each of the variables xAxis, yAxis, zAxis? Note that the shape of the vector GRID propagates through these computations. So they are vectors also.
Now re-read the error message. Surf requires an array. You passed it a vector. What you really wanted to do, we cannot know.

Weitere Antworten (0)

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!

Translated by