При создании графиков поверхности с использованием таких функций, как surf или mesh, можно настроить цветовую схему, вызвав colormap функция. Если требуется дальнейшее управление внешним видом, можно изменить направление или массив цветов по поверхности. Эта настройка требует изменения значений в массиве, который управляет взаимосвязью между поверхностью и картой цветов.
CData свойство Surface объект содержит массив индексирования C которая связывает определенные местоположения на графике с цветами в карте цветов. C имеет следующее отношение к поверхности z = f (x, y ):
C имеет тот же размер, что и Z, где Z - массив, содержащий значения f (x, y) в каждой точке сетки на поверхности.
Значение при C(i,j) управляет цветом в месте расположения сетки (i,j) на поверхности.
По умолчанию C равно Z, что соответствует цветам, изменяющимся в зависимости от высоты.
По умолчанию диапазон C линейно сопоставляется с количеством строк в массиве карты цветов.
Например, выборка 3 на 3 Z = X + Y имеет следующую связь с картой цветов, содержащей N записей.

Обратите внимание, что наименьшее значение (-2) сопоставляется с первой строкой в карте цветов. Наибольшее значение (2) сопоставляется с последней строкой в карте цветов. Промежуточные значения в C отображается линейно к промежуточным строкам в карте цветов.
Примечание
На предыдущем графике поверхности показано назначение цветов вершинам поверхности. Однако поведение по умолчанию заключается в заливке граней сегмента сплошным цветом. Этот сплошной цвет основан на цветах, назначенных окружающим вершинам. Дополнительные сведения см. в разделе FaceColor описание свойства.
При использовании значения по умолчанию C=Z, цвета изменяются с изменениями в Z.
[X,Y] = meshgrid(-10:10); Z = X + Y; s = surf(X,Y,Z); xlabel('X'); ylabel('Y'); zlabel('Z');

Это поведение можно изменить, указав C при создании поверхности. Например, цвета на этой поверхности изменяются с X.
C = X; s = surf(X,Y,Z,C); xlabel('X'); ylabel('Y'); zlabel('Z');

Кроме того, можно задать CData непосредственно свойство. Эта команда позволяет изменять цвета с помощью Y.
s.CData = Y;

Цвета не должны следовать изменениям в одном измерении. Действительно, CData может быть любым массивом того же размера, что и Z. Например, цвета на этой плоскости соответствуют форме функции sinc.
R = sqrt(X.^2 + Y.^2) + eps; s.CData = sin(R)./(R);
