当前位置:   article > 正文

Matlab热图制作学习-Zhaoxu Liu / slandarer (2024). special heatmap (https://www.mathworks.com/matlabcentral_matlab一键生成热图

matlab一键生成热图

去年的时候给导师指导的本科师妹制作热图,学习了大神slandarer提供的热图代码:

参考来源:
Zhaoxu Liu / slandarer (2024). special heatmap (https://www.mathworks.com/matlabcentral/fileexchange/125520-special-heatmap), MATLAB Central File Exchange. 检索来源 2024/1/7.

但是今年师妹来问我,怎么做的,就已经彻底忘记了,想了好久怎么做的.
在这里插入图片描述

因此还是再记录一下吧,省的再忘记了。

使用的热图函数来源:https://ww2.mathworks.cn/matlabcentral/fileexchange/125520-special-heatmap

除了修改一些字体字号等,大神提供的SHeatmap.m文件里的内容几乎都不需要修改。还需要使用颜色包工具。

之后直接引用函数即可。引用也是直接参考的大神提供的现成的文件,略作修改即可。之前一直使用Origin制作热图,但是origin是没有办法制作跨对角线不同风格的。roigin制作的图如下所示:
在这里插入图片描述

但是SHeatmap函数可以出如下类型更复杂的图:
在这里插入图片描述
参考使用的代码大概如下所示,Data和色带等需要自己再设置:

clc;close all;
Data=Data2020;
figure()
SHM_m1=SHeatmap(Data,'Format','sq');
SHM_m1=SHM_m1.draw();
SHM_m1.setText('FontSize',12);
SHM_m1=SHM_m1.setType('tril');  
SHM_m1.setColLabel('Visible','off')
SHM_m1.setRowLabel('Visible','on','FontSize',12);
varName={  };
SHM_m1.setVarName(varName);

SHM_m2=SHeatmap(Data,'Format','acirc');
SHM_m2=SHM_m2.draw();
SHM_m2.setType('triu0');
SHM_m2.setRowLabel('Visible','off')
SHM_m2.setColLabel('Visible','on','FontSize',12)
SHM_m2.setVarName(varName)

clim([ ])
colormap(slanCM( ))
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/660636
推荐阅读
相关标签
  

闽ICP备14008679号