How to surf very small values keeping the same ratio?

5 views (last 30 days)
I'm having a solution with very small values and I need to surf it; this is how a part of the solution looks like:
I'm also using the same aspect ratio and because the values are so small the surf looks like a 2D plot.
It should look as if I would take a pencil and a piece of paper and I would draw it. Is there any way to keep the same aspect ratio but not to look like in the figure? Thank you.

Accepted Answer

John D'Errico
John D'Errico on 11 Jun 2023
I THINK what you are asking is how to make the surface show there is little variation in z. I'll make up an example...
[X,Y] = meshgrid(0:5,0:6);
Z = (X+Y)*1e-3;
surf(X,Y,Z)
box on
view(-60,10)
And it looks like the surface is doing something significant, when really, it is pretty boring. I'll redo the plot, then add one extra call now.
surf(X,Y,Z)
box on
axis equal
view(-60,10)
So viewed from the same angle, now we see that one of the surfaces is pretty boring, yet the first looks as if something is happening. The difference was the "axis equal" command.
  2 Comments
Alexandra Roxana
Alexandra Roxana on 12 Jun 2023
Edited: Alexandra Roxana on 12 Jun 2023
That's right, but the difference between the 0 and 2 on the x-axis and the difference between 0 and 0.002 on the z-axis is almost the same, which in reality isn't.
Torsten
Torsten on 12 Jun 2023
But how to escape from Flatland if you don't use this trick ? If the differences in one of the three dimensions is small, your plot will be almost 2d - that's a simple fact.

Sign in to comment.

More Answers (1)

Alan Stevens
Alan Stevens on 11 Jun 2023
Multiply them all by 1e4.
  4 Comments
Alexandra Roxana
Alexandra Roxana on 12 Jun 2023
And how do I do that to also keep the aspect ratio? With zlim?

Sign in to comment.

Products


Release

R2017a

Community Treasure Hunt

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

Start Hunting!