Тепловые карты - это способ визуализации данных с помощью цвета. В этом примере показано, как импортировать файл в MATLAB ® в виде таблицы и создать тепловую карту из столбцов таблицы. Также показано, как изменить внешний вид тепловой карты, например, задать метки заголовка и оси.
Загрузить образец файла TemperatureData.csv, которая содержит среднесуточные температуры с января 2015 года по июль 2016 года. Прочтите файл в таблицу и отобразите первые пять строк.
tbl = readtable('TemperatureData.csv');
head(tbl,5)ans=5×4 table
Year Month Day TemperatureF
____ ___________ ___ ____________
2015 {'January'} 1 23
2015 {'January'} 2 31
2015 {'January'} 3 25
2015 {'January'} 4 39
2015 {'January'} 5 29
Создайте тепловую карту, показывающую месяцы вдоль оси X и годы вдоль оси Y. Раскрасьте ячейки тепловой карты, используя температурные данные, установив ColorVariable собственность. Назначить HeatmapChart объект к переменной h. Использовать h для изменения диаграммы после ее создания.
h = heatmap(tbl,'Month','Year','ColorVariable','TemperatureF');

По умолчанию MATLAB вычисляет цветовые данные как среднюю температуру для каждого месяца. Однако можно изменить метод расчета, установив ColorMethod собственность.
Значения вдоль оси отображаются в алфавитном порядке. Измените порядок месяцев таким образом, чтобы они отображались в хронологическом порядке. Можно настроить метки с помощью категориальных массивов или путем установки HeatmapChart свойства.
Чтобы использовать категориальные массивы, сначала измените данные в Month столбец таблицы из массива ячеек в категориальный массив. Затем используйте reordercats для изменения порядка категорий. Эти функции можно применить к таблице в рабочей области (tbl) или к таблице, хранящейся в SourceTable имущества HeatmapChart объект (h.SourceTable). Применение их к таблице, хранящейся в HeatmapChart объект позволяет избежать влияния на исходные данные.
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);
Аналогично, можно добавлять, удалять или переименовывать метки тепловых карт с помощью addcats, removecats, или renamecats функции для категориальных массивов.
Можно также изменить порядок значений вдоль оси с помощью XDisplayData и YDisplayData свойства HeatmapChart объект.
h.XDisplayData = {'January','February','March','April','May','June','July',...
'August','September','October','November','December'};
При создании тепловой карты с использованием табличных данных в тепловой карте автоматически создаются метки заголовка и оси. Настройте метки заголовка и оси, установив Title, XLabel, и YLabel свойства HeatmapChart объект. Например, измените заголовок и удалите метку оси X. Также измените размер шрифта.
h.Title = 'Average Temperatures'; h.XLabel = ''; h.FontSize = 12;

Поскольку нет данных за август 2016 года по декабрь 2016 года, эти ячейки выглядят как отсутствующие данные. Изменение внешнего вида отсутствующих ячеек данных с помощью MissingDataColor и MissingDataLabel свойства.
h.MissingDataColor = [0.8 0.8 0.8];
h.MissingDataLabel = 'No Data';
Удалите панель цветов, установив ColorbarVisible собственность.
h.ColorbarVisible = 'off';
Настройте формат текста, который отображается в каждой ячейке, установив CellLabelFormat собственность. Например, отображение текста без десятичных значений.
h.CellLabelFormat = '%.0f';
Показывать только первый месяц каждого квартала путем установки XDisplayData собственность. Добавьте 2017 год вдоль оси y, установив YDisplayData собственность. Задайте для этих свойств подмножество, суперсеть или перестановку значений в XData или YDataсоответственно.
h.XDisplayData = {'January','April','July','October'};
h.YDisplayData = {'2015','2016','2017'};
Поскольку нет данных, связанных с 2017 годом, ячейки теплосети используют отсутствующий цвет данных.
addcats | categorical | heatmap | readtable | removecats | renamecats | reordercats | table