出图发现colobar的色系不一致,大多ai之后用的jet,有的会出来parula
解决:
1.更改代码这块
%colormap(jet); % 设置颜色映射
colormap(parula); % 替换为parula颜色映射
2.等值线和显色范围进行修改
①等值线:
m_contourf(X, Y, sst_model1, 8, 'linestyle', '-');
增大
m_contourf(X, Y, sst_model1, 10, 'linestyle', '-'); % 增加等值线数量
②显色范围
caxis ([min_val max_val])
3.自定义色块
% 自定义颜色映射(匹配目标图颜色过渡)
custom_cmap = [
0.3 0 1; % 新增紫色
0 0 1; % 深蓝
0 0.5 1; % 蓝
0 1 1; % 青绿
0.5 1 0.5; % 淡绿
1 1 0; % 黄
1 0.6 0]; % 橙黄
% 生成平滑过渡色带(增加色带数量让过渡更自然)
n_colors = 128;
custom_cmap = interp1(1:size(custom_cmap,1), custom_cmap, linspace(1, size(custom_cmap,1), n_colors), 'linear');
% 绘制填充等高线
m_contourf(X, Y, sst_model1, 8, 'linestyle', '-');
colormap(custom_cmap);
% 精细设置colorbar
cb = colorbar;
set(cb, 'YTick', 24.2:0.3:25.8); % 设置刻度值(与标签间隔统一)
set(cb, 'YTickLabel', num2str((24.2:0.3:25.8)')); % 修正属性名并统一间隔
ylabel(cb, '海温(℃)', 'FontSize', 12); % 添加标签
set(cb, 'FontSize', 10);
参考【Matlab】到底怎么自定义colorbar/colormap的颜色?_colorbar颜色范围自定义-优快云博客