You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Matlab热力图中单独设置X轴刻度与X轴标签字体大小?

Matlab热力图单独调整X轴标签与刻度字体大小

我使用Matlab的heatmap函数生成热力图,效果如下:

热力图

目前X轴刻度(0、0.05等)的字体大小合适,但希望将X轴标签(如示例中的'Drive conversion rate')的字体调大。

当前代码如下:

h = heatmap(x_values, y_values, heatmap_values',  'MissingDataColor', 'w', 'GridVisible', 'off', 'MissingDataLabel', " ", 'CellLabelColor', 'none', 'ColorMethod', 'mean', 'ColorbarVisible','off');
title('Standard');
xlabel('Female drive fitness');
ylabel('Embryo resistance rate');
s = struct(h);
s.XAxis.TickLabelRotation = 60;
s.Axes.Title.FontSize = 8;
s.XAxis.FontSize = 5.5;
s.YAxis.FontSize = 5.5;

现在设置s.XAxis.FontSize会同时改变X轴刻度和X轴标签的字体大小,且找不到s.xLabel的FontSize参数,请问如何单独调整两者的字体大小?


解决方案

在Matlab中,heatmap对象的底层坐标轴(Axes)的XAxis.FontSize仅控制刻度标签大小,而X轴标题的字体大小需要通过坐标轴的XLabel属性单独设置。无需将heatmap对象转为结构体,直接通过对象属性访问即可:

  • 调整X轴刻度字体大小:设置h.Axes.XAxis.FontSize
  • 调整X轴标签字体大小:设置h.Axes.XLabel.FontSize

修改后的完整代码:

h = heatmap(x_values, y_values, heatmap_values',  'MissingDataColor', 'w', 'GridVisible', 'off', 'MissingDataLabel', " ", 'CellLabelColor', 'none', 'ColorMethod', 'mean', 'ColorbarVisible','off');
title('Standard');
xlabel('Female drive fitness');
ylabel('Embryo resistance rate');

% 调整X轴刻度旋转角度
h.Axes.XAxis.TickLabelRotation = 60;
% 设置标题字体大小
h.Axes.Title.FontSize = 8;
% 设置X轴刻度字体大小(仅控制刻度)
h.Axes.XAxis.FontSize = 5.5;
% 设置X轴标签字体大小(单独控制标签)
h.Axes.XLabel.FontSize = 10; % 可按需调整数值
% 设置Y轴刻度字体大小
h.Axes.YAxis.FontSize = 5.5;

这样就能实现X轴刻度和标签字体大小的独立调整。

内容的提问来源于stack exchange,提问作者Ammiba

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 13:00:29