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?