Error using mesh z must be a matrix

4 ビュー (過去 30 日間)
Anish Sundar Gowthaman
Anish Sundar Gowthaman 2021 年 4 月 14 日
コメント済み: Daniel Pollard 2021 年 4 月 15 日
>> t=linspace(0,2,100);
>> x=t; y=t. ^2; z=t.^3;
>> plot3 (x,y,z), grid
>> t=linspace(–5,5,50); y=x;
>> z=–7./(1+x.^2+y.^2);
>> mesh(z)
  3 件のコメント
Anish Sundar Gowthaman
Anish Sundar Gowthaman 2021 年 4 月 15 日
@Daniel Pollard What corrections should I make ?
Daniel Pollard
Daniel Pollard 2021 年 4 月 15 日
I don't know how to answer that when I don't know what the aim of your code is. Star Strider has left an answer - perhaps they figured out what you're after?

サインインしてコメントする。

回答 (1 件)

Star Strider
Star Strider 2021 年 4 月 14 日
The arguments to ‘z’ need to be matrices in order for ‘z’ to be a matrix. Use ndgrid or meshgrid (linked to on that page) to create the matrices.
Try this:
t=linspace(0,2,100);
x=t;
y=t.^2;
z=t.^3;
figure
plot3(x,y,z)
grid on
t=linspace(-5,5,50);
y=x;
[X,Y] = ndgrid(x,y);
z= @(x,y) -7./(1+x.^2+y.^2);
figure
mesh(X,Y,z(X,Y))
.

カテゴリ

Help Center および File ExchangeGraphics Performance についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by