赞
踩
MATLAB 中使用热力图的主要目的是可视化矩阵或二维数据集的值,从事数据挖掘的研究人员应该是都比较熟悉的。 最近,在论文书写中,为了直观展示数据变量中特征间的关系,详细的了解了下,为此记录同时分享给大家。
imagesc 函数可以用于显示矩阵中的数据,并根据数据的大小在热力图上显示不同的颜色。下面是使用 imagesc 函数创建热力图的示例代码:
% 创建一个随机矩阵 clear all rng(2024) data = randn(50, 50); % 显示热力图 imagesc(data); colorbar; % 添加颜色条 colormap('parula'); % 设置颜色映射,例如 'jet', 'hot', 'cool', 'gray' 等 % 可选:调整坐标轴刻度 xticks([0:5:size(data, 2)]); yticks([0:5:size(data, 2)]); % 可选:设置坐标轴刻度标签 xticklabels(); yticklabels(); % 添加坐标轴标签 xlabel('X 轴','FontSize',14); ylabel('Y 轴','FontSize',14); title('方法1::Imagesc');
除了使用 imagesc 函数外,还可以使用 heatmap 函数创建热力图。下面是使用 heatmap 函数创建热力图的示例代码:
% 创建一个随机矩阵
clear all
rng(2024)
data = randn(50, 50);
% 显示热力图
figure;
h=heatmap(data,'Colormap', parula );
% 添加坐标轴标签
xlabel('X 轴');
ylabel('Y 轴');
title('方法2: heatmap');
heatmap:
imagesc:
此外,在我画图过程中发现:
当输入的矩阵维度较高时,heatmap展示的小方块太过稠密,放在pdf中缩小时会一片黑
而imagesc在数据维度高时会对小方格进行模糊化处理,保留整体颜色效果。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。