Main Content

La traducción de esta página aún no se ha actualizado a la versión más reciente. Haga clic aquí para ver la última versión en inglés.

Cómo se relacionan los datos de una gráfica de superficie con un mapa de colores

Cuando crea gráficas de superficie utilizando funciones como surf o mesh, puede personalizar el esquema de color llamando a la función colormap. Si desea controlar el aspecto, puede cambiar la dirección o el patrón de los colores por la superficie. Esta personalización requiere cambiar los valores en un arreglo que controla la relación entre la superficie y el mapa de colores.

Relación entre la superficie y el mapa de colores

La propiedad CData de un objeto de Surface contiene un arreglo de indexación C que asocia ubicaciones específicas de su gráfica con colores del mapa de colores. C tiene la siguiente relación con la superficie z = f(x,y):

  • C es del mismo tamaño que Z, mientras que Z es el arreglo que contiene los valores de f(x,y) en cada punto de cuadrícula de la superficie.

  • El valor de C(i,j) controla el color de la ubicación de la cuadrícula (i,j) en la superficie.

  • De manera predeterminada, C es igual a Z, lo que corresponde con los colores que cambian según la altitud.

  • De forma predeterminada, el rango C se asigna de forma lineal al número de filas en el arreglo del mapa de colores.

Por ejemplo, un muestreo de 3 por 3 de Z = X + Y tiene la siguiente relación con un mapa de colores que contiene N entradas.

The relationship between matrix C, a colormap matrix, and a surface plot. The smallest value of C maps to the first row in the colormap matrix, and that color appears at the corresponding location of the plot. Similarly, the largest value of C maps to the last row in the colormap matrix, and that color appears at the corresponding location of the plot.

Tenga en cuenta que el valor más pequeño (-2) se asigna a la primera fila del mapa de colores. El valor más grande (2) se asigna a la última línea del mapa de colores. Los valores intermedios en C se asignan de forma lineal a las filas intermedias del mapa de colores.

Nota

La gráfica de superficie anterior muestra cómo se asignan los colores a los vértices de la superficie. Sin embargo, el comportamiento predeterminado es rellenar las caras del parche con un color sólido. Dicho color sólido se basa en los colores asignados a los vértices que hay a su alrededor. Para obtener más información, consulte la descripción de la propiedad FaceColor.

Cambiar la dirección de los patrones de colores

Al utilizar el valor predeterminado de C=Z, los colores varían con cambios en Z.

[X,Y] = meshgrid(-10:10);
Z = X + Y;
s = surf(X,Y,Z);
xlabel('X');
ylabel('Y');
zlabel('Z');

Figure contains an axes object. The axes object with xlabel X, ylabel Y contains an object of type surface.

Puede cambiar este comportamiento especificando C cuando cree la superficie. Por ejemplo, los colores de esta superficie varían con X.

C = X;
s = surf(X,Y,Z,C);
xlabel('X');
ylabel('Y');
zlabel('Z');

Figure contains an axes object. The axes object with xlabel X, ylabel Y contains an object of type surface.

También puede establecer directamente la propiedad CData. Este comando hace que los colores varíen con Y.

s.CData = Y;

Figure contains an axes object. The axes object with xlabel X, ylabel Y contains an object of type surface.

Los colores no siguen los cambios en una única dirección necesariamente. De hecho, CData puede ser cualquier arreglo del mismo tamaño que Z. Por ejemplo, los colores de este plano siguen la forma de una función sinc.

R = sqrt(X.^2 + Y.^2) + eps;
s.CData = sin(R)./(R);

Figure contains an axes object. The axes object with xlabel X, ylabel Y contains an object of type surface.

Consulte también

Funciones

Propiedades

Temas relacionados