# MATLAB Special Heatmap
#### 介绍
Zhaoxu Liu / slandarer (2023). special heatmap (https://www.mathworks.com/matlabcentral/fileexchange/125520-special-heatmap), MATLAB Central File Exchange. 检索来源 2023/3/1.
#### 免登录网盘链接
链接:https://pan.baidu.com/s/13t5w0aVzCWebNwaFfWSlnw?pwd=slan \
提取码:slan
### 1 基础使用(Basic use)
#### 1.1 非负矩阵(Draw positive heat map)
```matlab
figure()
Data=rand(15,15);
SHM1=SHeatmap(Data,'Format','sq');
SHM1=SHM1.draw();
```
![输入图片说明](gallery/Basic_positive.png)
#### 1.2 绘制有负数热图(Contains negative numbers)
```matlab
figure()
Data=rand(15,15)-.5;
SHM2=SHeatmap(Data,'Format','sq');
SHM2=SHM2.draw();
```
![输入图片说明](gallery/Basic_negative.png)
#### 1.3 绘制不同大小热图(Draw heat maps of different sizes)
```matlab
figure()
Data=rand(25,30);
SHM4=SHeatmap(Data,'Format','sq');
SHM4=SHM4.draw();
```
![输入图片说明](gallery/Basic_25_30.png)
#### 1.4 调整colorbar位置(Adjust the colorbar Location)
```matlab
figure()
Data=rand(3,12);
SHM5=SHeatmap(Data,'Format','sq');
SHM5=SHM5.draw();
CB=colorbar;
CB.Location='southoutside';
```
![输入图片说明](gallery/Basic_colorbar_location.png)
#### 1.5 绘制有NaN热图(Draw heat map with NaN)
```matlab
figure()
Data=rand(12,12)-.5;
Data([4,5,13])=nan;
SHM6=SHeatmap(Data,'Format','sq');
SHM6=SHM6.draw();
```
![输入图片说明](gallery/Basic_with_NaN.png)
#### 1.6 绘制有文本热图(Draw heat map with texts)
使用 setText() 方法显示文字:
Use the setText() method to display text:
```matlab
figure()
Data=rand(12,12)-.5;
Data([4,5,13])=nan;
SHM7=SHeatmap(Data,'Format','sq');
SHM7=SHM7.draw();
SHM7.setText();
```
![输入图片说明](gallery/Basic_with_text.png)
#### 1.7 绘制带标签热图(Draw heat map with labels)
改x轴y轴标签就还是设置 XTickLabel 和 YTickLabel :
Change the x-axis and y-axis labels by setting XTickLabel and YTickLabel :
```matlab
figure()
Data=rand(12,12);
SHM8=SHeatmap(Data,'Format','sq');
SHM8=SHM8.draw();
ax=gca;
ax.XTickLabel={'X-1','X-2','X-3','X-4','X-5','X-6','X-7','X-8','X-9','X-10','X-11','X-12'};
ax.YTickLabel={'Y-1','Y-2','Y-3','Y-4','Y-5','Y-6','Y-7','Y-8','Y-9','Y-10','Y-11','Y-12'};
ax.FontSize=14;
```
![输入图片说明](gallery/Basic_with_labels.png)
### 各类型热图绘制(Preparation of various Format of heat maps)
+ sq : square (default) : 方形(默认)
+ pie : pie chart : 饼图
+ circ : circular : 圆形
+ oval : oval : 椭圆形
+ hex : hexagon :六边形
+ asq : auto-size square :自带调整大小的方形
+ acirc : auto-size circular :自带调整大小的圆形
```matlab
% sq : square (default) : 方形(默认)
% pie : pie chart : 饼图
% circ : circular : 圆形
% oval : oval : 椭圆形
% hex : hexagon :六边形
% asq : auto-size square :自带调整大小的方形
% acirc : auto-size circular :自带调整大小的圆形
Format={'sq','pie','circ','oval','hex','asq','acirc'};
A=rand(12,12);
B=rand(12,12)-.5;
for i=1:length(Format)
disp(['Format--',Format{i}])
% 绘制纯正数热图(Draw positive heat map)
figure();
SHM_A=SHeatmap(A,'Format',Format{i});
SHM_A=SHM_A.draw();
% exportgraphics(gca,['Format_',Type{i},'_A.png']) % 存储图片
% 绘制含负数热图(Draw heat map with negative number)
figure();
SHM_B=SHeatmap(B,'Format',Format{i});
SHM_B=SHM_B.draw();
% exportgraphics(gca,['Format_',Type{i},'_B.png']) % 存储图片
end
```
![输入图片说明](gallery/Format_sq_A.png)
![输入图片说明](gallery/Format_sq_B.png)
![输入图片说明](gallery/Format_pie_A.png)
![输入图片说明](gallery/Format_pie_B.png)
![输入图片说明](gallery/Format_circ_A.png)
![输入图片说明](gallery/Format_circ_B.png)
![输入图片说明](gallery/Format_oval_A.png)
![输入图片说明](gallery/Format_oval_B.png)
![输入图片说明](gallery/Format_hex_A.png)
![输入图片说明](gallery/Format_hex_B.png)
![输入图片说明](gallery/Format_asq_A.png)
![输入图片说明](gallery/Format_asq_B.png)
![输入图片说明](gallery/Format_acirc_A.png)
![输入图片说明](gallery/Format_acirc_B.png)
### 3 调整colormap(Adjust colormap)
#### 3.1 调整clim(Adjust clim)
使用 clim() 或者 caxis() 调整颜色映射范围
Use function clim() or caxis() to set the CLim
```matlab
fig=figure('Position',[50,50,1400,700]);
% random data
Data=rand(12,12)-.5;
Data([4,5,13])=nan;
% subplot1
ax1=axes('Parent',fig,'Position',[0+1/40,0,1/2-1/20,1]);
SHM_ax1=SHeatmap(Data,'Format','sq','Parent',ax1);
SHM_ax1=SHM_ax1.draw();
SHM_ax1.setText();
% subplot2 adjust clim
ax2=axes('Parent',fig,'Position',[1/2+1/40,0,1/2-1/20,1]);
SHM_ax2=SHeatmap(Data,'Format','sq','Parent',ax2);
SHM_ax2=SHM_ax2.draw();
clim([-.8,.8])
SHM_ax2.setText();
```
![输入图片说明](gallery/Colormap_clim.png)
#### 3.2 使用MATLAB自带colormap(Use the built-in colormap in MATLAB)
```matlab
figure()
Data=rand(14,14);
SHM_Bone=SHeatmap(Data,'Format','sq');
SHM_Bone.draw();
colormap(bone)
```
![输入图片说明](gallery/Colormap_bone.png)
#### 3.3 slanCM(slanCM colormap)
Zhaoxu Liu / slandarer (2023). 200 colormap (https://www.mathworks.com/matlabcentral/fileexchange/120088-200-colormap), MATLAB Central File Exchange. 检索来源 2023/3/15.
```matlab
% 单向colormap或离散colormap
for i=[20,21,61,177]
figure()
Data=rand(14,14);
SHM_slan=SHeatmap(Data,'Format','sq');
SHM_slan.draw();
colormap(slanCM(i))
exportgraphics(gca,['gallery\Colormap_slanCM_',num2str(i),'.png'])
end
% 双向colormap(Diverging colormap)
for i=[141,136,134]
figure()
Data=rand(14,14)-.5;
SHM_slan=SHeatmap(Data,'Format','sq');
SHM_slan=SHM_slan.draw();
clim([-.7,.7])
colormap(slanCM(i))
SHM_slan.setText();
exportgraphics(gca,['gallery\Colormap_slanCM_',num2str(i),'.png'])
end
```
![输入图片说明](gallery/Colormap_slanCM_20.png)
![输入图片说明](gallery/Colormap_slanCM_21.png)
![输入图片说明](gallery/Colormap_slanCM_61.png)
![输入图片说明](gallery/Colormap_slanCM_177.png)
![输入图片说明](gallery/Colormap_slanCM_141.png)
![输入图片说明](gallery/Colormap_slanCM_136.png)
![输入图片说明](gallery/Colormap_slanCM_134.png)
### 4 整体修饰(Overall decoration)
setBox :修饰边框
setPatch :修饰图形
setText :修饰文本
```matlab
figure()
Data=rand(10,10);
SHM=SHeatmap(Data,'Format','pie');
SHM=SHM.draw();
% 容器边框设置为蓝色
% 图形边框设置为红色
% The container box border is set to blue
% The drawing border is set to red
SHM.setBox('Color',[0,0,.8])
SHM.setPatch('EdgeColor',[.8,0,0])
figure()
Data=rand(10,10);
Data([4,5,13])=nan;
SHM=SHeatmap(Data,'Format','sq');
SHM=SHM.draw();
% 设置文本为蓝色并修改字号
% Set the text to blue and modify the font size
SHM.setText('Color',[0,0,.8],'FontSize',14)
```
![输入图片说明](gallery/All1.png)
![输入图片说明](gallery/All2.png)
### 5 局部修饰(Partial decoration)
setTextMN
setPatchMN
设置第m行n列对象的属性:举个例子,把数值大于0.9部分文字变为星号,并用红色框框起来,并改编NaN处颜色。
Set the attributes of the object in row m and column n: for example, change the text with a value greater than 0.9 into an asterisk, frame it in red, and adapt the color at NaN.
```matlab
figure()
Data=rand(9,9);
Data([4,5,13])=nan;
% 绘制方块形状热图
SHM=SHeatmap(Data,'Format','sq');
SHM=SHM.draw();
% 显示文本(Show Text)
SHM.setText();
for i=1:size(Data,1)
for j=1:size(Data,2)
if Data(i,j)>=.9
SHM.setTextMN(i,j,'String','**','FontSize',20) % 修改>=0.9方块颜色
SHM.setPatchMN(i,j,'EdgeColor',[1,0,0],'LineWidth',2) % 修改>=0.9方块文本为**
end
if isnan(
没有合适的资源?快使用搜索试试~ 我知道了~
MATLAB Special Heatmap MATLAB Central File Exchange. 检索来源 2023/3
共109个文件
png:87个
m:18个
mlx:1个
需积分: 0 0 下载量 69 浏览量
2024-01-08
10:21:18
上传
评论
收藏 15.34MB ZIP 举报
温馨提示
MATLAB Special Heatmap MATLAB Central File Exchange. 检索来源 2023/3
资源推荐
资源详情
资源评论
收起资源包目录
MATLAB Special Heatmap
MATLAB Central File Exchange. 检索来源 2023/3 (109个子文件)
LICENSE 18KB
SHeatmap.m 20KB
demo11_TreeGroup.m 3KB
SDendrogram.m 2KB
demo6_triType.m 2KB
SClusterBlock.m 2KB
demo8_Tree.m 2KB
demo1_BasicUse.m 2KB
demo3_Colormap.m 2KB
demo10_Multilayer.m 1KB
demo9_Group.m 1KB
slanCM.m 1KB
demo2_Format.m 1011B
demo7_tri2.m 850B
demo12_TextFormat.m 840B
demo5_setMN.m 646B
demo4_setAll.m 636B
git_add_push.m 102B
git_pull.m 46B
slanCM_Data.mat 870KB
README.md 21KB
README.mlx 5.6MB
_8.png 299KB
_6.png 282KB
_9.png 251KB
Text_Format_0.1e.png 244KB
Colormap_clim.png 224KB
_5.png 206KB
_7.png 199KB
Type_XLim1.png 199KB
_3.png 198KB
Type_XLim2.png 188KB
Text_Format_0.1fS.png 185KB
_4.png 181KB
Format_pie_A.png 179KB
Format_pie_B.png 176KB
Type_tril_pie.png 169KB
Format_oval_B.png 167KB
Colormap_slanCM_134.png 167KB
Format_oval_A.png 166KB
Colormap_slanCM_136.png 166KB
Type_tri2_2.png 164KB
Colormap_slanCM_141.png 161KB
Type_tril_oval.png 157KB
Type_tri2_1.png 157KB
_2.png 155KB
Type_triu_pie.png 153KB
All1.png 152KB
Type_tril0_pie.png 152KB
Type_tril0_oval.png 151KB
Format_circ_A.png 150KB
Format_circ_B.png 148KB
Type_tril_circ.png 147KB
Type_triu_oval.png 144KB
Type_tril.png 142KB
Type_triu0_pie.png 137KB
Type_triu0_oval.png 136KB
Type_triu_circ.png 131KB
Text_Format_0.1f.png 131KB
Type_tril0_circ.png 131KB
Type_tril0.png 131KB
Type_Font.png 129KB
Basic_with_text.png 129KB
Type_triu.png 127KB
All2.png 125KB
Type_triu0.png 117KB
Type_triu0_circ.png 117KB
Type_tril_hex.png 112KB
Format_hex_A.png 108KB
Type_tril_acirc.png 105KB
Format_hex_B.png 105KB
Format_acirc_B.png 100KB
Format_acirc_A.png 100KB
Type_tril0_hex.png 94KB
Type_triu_hex.png 93KB
Type_tril0_acirc.png 89KB
Type_triu_acirc.png 86KB
MN.png 84KB
Type_triu0_hex.png 78KB
Type_triu0_acirc.png 73KB
TreeGroup.png 69KB
Type_tril_asq.png 69KB
Tree.png 69KB
Type_tril0_asq.png 65KB
Type_tril_sq.png 64KB
_1.png 63KB
Type_tril0_sq.png 60KB
Basic_25_30.png 53KB
Type_triu_asq.png 50KB
Type_triu0_asq.png 48KB
Type_triu_sq.png 46KB
Type_labels.png 43KB
Type_triu0_sq.png 43KB
Basic_with_labels.png 40KB
Group.png 38KB
Format_asq_A.png 34KB
Basic_positive.png 34KB
Colormap_slanCM_21.png 33KB
Colormap_bone.png 33KB
Colormap_slanCM_61.png 33KB
共 109 条
- 1
- 2
资源评论
散装咖啡
- 粉丝: 0
- 资源: 39
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功