How can I paint a surface according to another scalar function?

2 views (last 30 days)
Dear experts,
Assume I am given with the surface: z=4-x-y^2 . I now want every point on the surface to be colored according to a function: R(x,y,z).
Is there any simple way to make such a coloring?
Thanks a lot in advance!

Accepted Answer

Mike Garrity
Mike Garrity on 11 Jan 2016
Something like this?
[x,y] = meshgrid(linspace(-2,2,50));
z = 4-x-y.^2;
c = x.^2 - y;
surf(x,y,z,c)
  2 Comments
Johnson
Johnson on 11 Jan 2016
I think that yes ! Thanks a lot ! But- just to make sure, what exactly does $c$ gives? I mean, does it paint every point according to z=c ?
Mike Garrity
Mike Garrity on 11 Jan 2016
No, the 3rd argument (z) gets turned into the Z coordinate, and the 4th argument (c) gets turned into a color value. If you do this:
colorbar
You'll get a colorbar which shows the relationship between the values in c and the colors that are used for each point on the surface.

Sign in to comment.

More Answers (0)

Products

Community Treasure Hunt

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

Start Hunting!