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

1 回表示 (過去 30 日間)
David Miller
David Miller 2016 年 7 月 27 日
回答済み: John D'Errico 2016 年 7 月 27 日
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

採用された回答

John D'Errico
John D'Errico 2016 年 7 月 27 日
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.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLighting, Transparency, and Shading についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by