I am trying to create a surface plot with nested loops and am getting the error "Z must be a matrix, not a scalar or vector."

1 view (last 30 days)
clear all
n=1;
for ii = 1:10;
for jj = 1:10;
x(n) = ii;
y(n) = jj;
z(n) = ii+jj;
n = n+1;
end
end
surf(x,y,z)

Accepted Answer

G A
G A on 22 Apr 2019
Edited: G A on 24 Apr 2019
Try something like the following (z must be a matrix):
for m = 1:10
x(m) = m;
for n = 1:10
y(n) = n;
z(m,n) = n+m;
end
end
surf(x,y,z)

More Answers (0)

Products


Release

R2019a

Community Treasure Hunt

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

Start Hunting!