MATLAB: How does surf map colormatrix

matlab function

I know surf(x,y,z,c) will use matrix c to map color, but how does it work? since matrix c actually has the size of z, instead of size of z x 3 (that's what I thought first, for I thought you specified the RGB for each element of z), how does matlab map c to different color schemes? For example,
surf(x,y,z,c); colormap winter
So how does matlab find the corresponding color based on c?

Best Answer

It uses the standard color mapping techniques: min value of c maps to the lowest entry in the color map, max value of c maps to the highest entry in the color map, everything in between maps linearly in to color map index numbers.
You can change properties to change the mapping strategy.