从表格数据创建热图
热图是一种使用颜色可视化数据的方法。本示例演示如何将文件作为表导入MATLAB®,并从表列创建热图。它还展示了如何修改热图的外观,例如设置标题和轴标签。
导入文件为表
加载示例文件TemperatureData.csv
,其中包含2015年1月至2016年7月的平均日气温。将文件读入一个表并显示前五行。
TBL = readtable(fullfile(matlabroot,“例子”,“图形”,“TemperatureData.csv”));头(5台)
ans =5×4表年月日温度f ____ ____________ ____________ 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 =热图(tbl,“月”,“年”,“ColorVariable”,“TemperatureF”);
MATLAB默认将颜色数据计算为每个月的平均温度。参数可以更改计算方法ColorMethod
财产。
沿轴重新排序值
沿轴的值按字母顺序显示。重新排列月份,使它们按时间顺序出现。您可以使用分类数组或通过设置自定义标签HeatmapChart
属性。
类中的数据要使用分类数组,请先更改月
将表的列从单元格数组转换为分类数组。然后使用reordercats
函数重新排序类别。您可以将这些函数应用于工作区中的表(资源描述
类中存储的表SourceTable
的属性HeatmapChart
对象(h.SourceTable
).对象中存储的表应用它们HeatmapChart
对象避免影响原始数据。
h.SourceTable.Month = category (h.SourceTable.Month);Neworder = {“1月”,“2”,“3”,“4”,“可能”,“6月”,“7”,...“八月”,“9”,“十月”,11月的,12月的};h.SourceTable.Month = reordercats(h.SourceTable.Month,neworder);
属性可以添加、删除或重命名热图标签addcats
,removecats
,或renamecats
用于分类数组的函数。
属性沿轴重新排列值XDisplayData
而且YDisplayData
的属性HeatmapChart
对象。
h.XDisplayData = {“1月”,“2”,“3”,“4”,“可能”,“6月”,“7”,...“八月”,“9”,“十月”,11月的,12月的};
修改标题和轴标签
当您使用表格数据创建热图时,热图会自动生成标题和轴标签。属性自定义标题和轴标签标题
,包含
,YLabel
的属性HeatmapChart
对象。例如,更改标题并删除x设在标签。另外,改变字体大小。
h.Title =的平均温度;h.XLabel =”;h.FontSize = 12;
修改缺失数据单元格的外观
由于没有2016年8月到2016年12月的数据,这些单元格显示为缺失数据。属性修改缺失数据单元格的外观MissingDataColor
而且MissingDataLabel
属性。
h.MissingDataColor = [0.8 0.8 0.8];h.MissingDataLabel =没有数据的;
删除Colorbar
属性移除颜色条ColorbarVisible
财产。
h.ColorbarVisible =“关闭”;
单元格文本格式
属性自定义显示在每个单元格中的文本的格式CellLabelFormat
财产。例如,显示不带十进制值的文本。
h.CellLabelFormat =“% .0f”;
沿轴添加或删除值
属性只显示每个季度的第一个月XDisplayData
财产。加上2017年沿着y的YDisplayData
财产。中的值的子集、超集或排列设置这些属性XData
或YData
,分别。
h.XDisplayData = {“1月”,“4”,“7”,“十月”};h.YDisplayData = {“2015”,“2016”,“2017”};
由于没有与2017年相关的数据,热图单元格使用缺失的数据颜色。