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.

Crear mapas de calor a partir de datos tabulares

Los mapas de calor son una forma de visualizar los datos mediante colores. Cuando llama a la función heatmap, puede especificar datos no agregados o agregados previamente:

  • Si especifica datos no agregados en forma de tabla, la función heatmap agrega los datos y muestra números y colores en cada celda que reflejan los valores agregados. Por ejemplo, es posible que las celdas muestren el número de veces que cada par (x, y) aparece en la tabla. Las etiquetas en los ejes x e y muestran los valores únicos en la tabla.

  • Si especifica datos en forma de matriz 2D, la función heatmap trata los valores como datos agregados. Cada elemento de la matriz se corresponde con una celda de la gráfica. El color de una celda indica cuán grande o pequeño es un valor de la matriz en relación con los otros valores de la matriz. De forma opcional, puede especificar las etiquetas que aparecen en los ejes x e y de la gráfica.

Este tema muestra cómo importar un archivo a MATLAB® como una tabla y cómo crear un mapa de calor a partir de las columnas de la tabla. También muestra cómo modificar el aspecto de un mapa de calor, como configurar el título y las etiquetas del eje.

Importar un archivo como tabla

Cargue el archivo de ejemplo TemperatureData.csv, que contiene las temperaturas medias desde enero de 2015 a julio de 2016. Lea el archivo en una tabla y muestre las primeras cinco filas.

tbl = readtable('TemperatureData.csv');
head(tbl,5)
    Year       Month       Day    TemperatureF
    ____    ___________    ___    ____________

    2015    {'January'}     1          23     
    2015    {'January'}     2          31     
    2015    {'January'}     3          25     
    2015    {'January'}     4          39     
    2015    {'January'}     5          29     

Crear mapas de calor básicos

Cree un mapa de calor que muestre los meses en el eje x y los años en el eje y. Coloree las celdas del mapa de calor con los datos de temperatura mediante la propiedad ColorVariable. Asigne el objeto HeatmapChart a la variable h. Utilice h para modificar la gráfica después de crearla.

h = heatmap(tbl,'Month','Year','ColorVariable','TemperatureF');

MATLAB calcula los datos de color como la temperatura media de cada mes de forma predeterminada. Sin embargo, puede cambiar el método de cálculo configurando la propiedad ColorMethod.

Reordenar valores en el eje

Los valores del eje aparecen por orden alfabético. Reordene los meses de forma que aparezcan por orden cronológico. Puede personalizar las etiquetas mediante arreglos categóricos o configurando las propiedades HeatmapChart.

Para utilizar los arreglos de categorización, cambie primero los datos de la columna Month de la tabla de un arreglo de celda a un arreglo de categorización. A continuación, utilice la función reordercats para volver a ordenar las categorías. Puede aplicar dichas funciones a la tabla en el área de trabajo (tbl) o a la tabla almacenada en la propiedad SourceTable del objeto de HeatmapChart (h.SourceTable). Si se aplican a la tabla almacenada en el objeto de HeatmapChart, se evita que modifiquen los datos originales.

h.SourceTable.Month = categorical(h.SourceTable.Month);
neworder = {'January','February','March','April','May','June','July',...
    'August','September','October','November','December'};
h.SourceTable.Month = reordercats(h.SourceTable.Month,neworder);

Asimismo, puede añadir, eliminar y renombrar las etiquetas del mapa de calor mediante las funciones addcats, removecats o renamecats de arreglos categóricos.

También puede reordenar los valores de un eje mediante las propiedades XDisplayData y YDisplayData del objeto de HeatmapChart.

h.XDisplayData = {'January','February','March','April','May','June', ...
    'July','August','September','October','November','December'};

Modificar etiquetas de eje y título

Al crear un mapa de calor mediante datos tabulares, el mapa de calor genera etiquetas de eje y un título de forma automática. Personalice el título y las etiquetas de eje configurando las propiedades Title, XLabel y YLabel del objeto de HeatmapChart. Por ejemplo, cambie el título y elimine la etiqueta del eje x. Cambie también el tamaño de la fuente.

h.Title = 'Average Temperatures';
h.XLabel = '';
h.FontSize = 12;

Modificar el aspecto de las celdas de datos faltantes

Dado que no existen datos desde agosto de 2016 hasta diciembre de 2016, dichas celdas aparecen como datos faltantes. Modifique el aspecto de las celdas de datos faltantes mediante las propiedades MissingDataColor y MissingDataLabel.

h.MissingDataColor = [0.8 0.8 0.8];
h.MissingDataLabel = 'No Data';

Eliminar la barra de colores

Elimine la barra de colores mediante la propiedad ColorbarVisible.

h.ColorbarVisible = 'off';

Formato de texto de las celdas

Utilice la propiedad CellLabelFormat para personalizar el formato del texto que aparece en las celdas. Por ejemplo, muestre el texto sin valores decimales.

h.CellLabelFormat = '%.0f';

Añadir o eliminar valores en el eje

Visualice solo el primer mes de cada trimestre configurando la propiedad XDisplayData. Añada el año 2017 en el eje y configurando la propiedad YDisplayData. Establezca dichas propiedades para un subconjunto, un superconjunto o una permutación de los valores en XData o YData, respectivamente.

h.XDisplayData = {'January','April','July','October'};
h.YDisplayData = {'2015','2016','2017'};

Dado que no hay datos asociados con el año 2017, las celdas del mapa de calor utilizan el color de datos faltantes.

Consulte también

Funciones

Propiedades