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. Este ejemplo 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');

Figure contains an object of type heatmap. The chart of type heatmap has title Mean of 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);

Figure contains an object of type heatmap. The chart of type heatmap has title Mean of TemperatureF.

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'};

Figure contains an object of type heatmap. The chart of type heatmap has title Mean of TemperatureF.

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;

Figure contains an object of type heatmap. The chart of type heatmap has title Average Temperatures.

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';

Figure contains an object of type heatmap. The chart of type heatmap has title Average Temperatures.

Eliminar la barra de colores

Elimine la barra de colores mediante la propiedad ColorbarVisible.

h.ColorbarVisible = 'off';

Figure contains an object of type heatmap. The chart of type heatmap has title Average Temperatures.

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';

Figure contains an object of type heatmap. The chart of type heatmap has title Average Temperatures.

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'};

Figure contains an object of type heatmap. The chart of type heatmap has title Average Temperatures.

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