Why can't I generate a 3-d surface when using surf? (file)

1 view (last 30 days)
My version is 2015b. I use Mac.
x=linspace(-2,2,20);
y=x';
z=y*x;
surf(x,y,z)
And the output has nothing, shownd in picture.

Answers (1)

Cris LaPierre
Cris LaPierre on 22 Jan 2022
Z must be a matrix. In your code, it is only a vector. Follow the eamples on the surf documentation page. You will find meshgrid helpful for this purpose.
x=linspace(-2,2,20);
y=x';
[X,Y] = meshgrid(x,y);
Z = X.*Y;
surf(x,y,Z)
  3 Comments
WEN SHIN LU
WEN SHIN LU on 23 Jan 2022
Thank you! I found it's about my files. I created a file called surf before. That's the issue.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!