how to plot a 3d surface using a matrix

I have a matrix d = 6x181, each of the numbers comprising it being density. How can I draw a surface plot against p and m, where m=1:1:6 and s=0:20:181? There was a similar question in the forum addressing the case of a matrix M with equal dimensions, but it was unclear to me, how to model it for my situation. Any help would be greatly appreciated.

 Accepted Answer

Another option:
d = sin((1:6)' * (1:181) / 90); % Creates (6x181) Matrix
m = 1:6;
p = 0:20:181;
figure
surf(d)
set(gca, 'XTick',p, 'YTick',m)
xlabel('p')
ylabel('m')

2 Comments

Thank you @Star Strider. This worked perfectly.
As always, my pleasure.

Sign in to comment.

More Answers (1)

See warp() which can accept arbitrary rectangular grid of coordinates including non uniform.

Products

Release

R2018b

Community Treasure Hunt

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

Start Hunting!