如何基于表格数据创建热图?

2025-11-01 12:42:12

1、命令行键入:

tbl = readtable(fullfile(matlabroot,'examples','graphics','TemperatureData.csv'));

%加载示例文件 TemperatureData.csv,此文件包含 2015 年 1 月至 2016 年 7 月间的日均温度。

如何基于表格数据创建热图?

2、命令行键入:

head(tbl,5)

%将此文件读取到一个表中并显示前五行。

如何基于表格数据创建热图?

3、命令行键入:

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

%创建一个热图,其中 x 轴表示月份,y 轴表示年份。通过设置 ColorVariable 属性,使用温度数据为热图单元格着色。将 HeatmapChart 对象赋给变量 h。在创建图形后,使用 h 对其进行摸扯五修改。

如何基于表格数据创建热图?

4、默认情况下,MATLAB 会将颜色数据作为每月的平均温度进行计算。但是,可通过设置 ColorMethod 属性来更改计算方法。

5、命令行键入:

h.SourceTable.Month = categorical(h.SourceTable.Month);

%要使用分类数组,首先将该表的 Month 列中的数据从元胞数组更改为分类数组。

如何基于表格数据创建热图?

6、命令行键入:

neworder = {'January','February','March','April','May','June','July',...

'August','September','October','November','December'};

%新的顺序

如何基于表格数据创建热图?

7、命令行键入:

h.SourceTable.Month = reordercats(h.SourceTable.Month,neworder);

%然后使用 reordercats函数对类别重新排序。

如何基于表格数据创建热图?

8、命令行键入:

h.XDisplayData = {'January','February','March','April','May','June','July',...

'August','September','October','November','December'};

%也可以使用 HeatmapChart 对象的 XDisplayData 和 YDisplayData 属性对轴值重新排序。

如何基于表格数据创建热图?

9、命令行键入:

h.Title = 'Average Temperatures';

%使用表格数据创建热图时,会自动生成热图的标题。

如何基于表格数据创建热图?

10、命令行键入:

h.XLabel = '';

使用表格数据创建热图时,会自动生成热图的轴标签。

如何基于表格数据创建热图?

11、命令行键入:

h.FontSize = 12;

%另外还可以更改字体大小。

如何基于表格数据创建热图?

12、命令行键入:

h.MissingDataColor = [0.8 0.8 0.8];

h.MissingDataLabel = 'No Data';

%使用MissingDataColor 和 MissingDataLabel 属性修改缺失数据元胞的外观。

如何基于表格数据创建热图?

13、命令行键入:

h.ColorbarVisible = 'off';

%通过设置 ColorbarVisible 属性删除颜色栏。

如何基于表格数据创建热图?

14、命令行键入:

h.CellLabelFormat = '%.0f';

%通过设置 CellLabelFormat 属性自定义每个元胞中显示的文本的格式。例如,显示不带小数点的值文本。

如何基于表格数据创建热图?

15、命令行键娃强入:

h.XDisplayData = {'January','April','July','October'};

h.YDisplayData = {'贪泥2015','2016','2017'};

%通过设置 XDisplayData 属性,仅显示每个季度的第一个月。通过设置 YDisplayData 属性,沿 y 轴添加年份 2017。将这些属性分别设置为 XData 或 YData 中的值的子集、超集或置换。

如何基于表格数据创建热图?

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢