【MATLAB绘图进阶第3弹】Matlab绘制热图系列

这篇具有很好参考价值的文章主要介绍了【MATLAB绘图进阶第3弹】Matlab绘制热图系列。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

热图的主要作用是直观展示重点研究对象的差异情况,多用于经济学与工学差异性分析之中,我们常见的多变量相关系数矩阵与混淆矩阵就可以通过热图增加图示的美感,南同学将和大家一起实现一张多样化的热图绘制!

 成图效果展示

matlab热图,matlab,开发语言

matlab热图,matlab,开发语言

matlab热图,matlab,开发语言

matlab热图,matlab,开发语言

 绘图三步走 

  1. 配色

    重要的事情说三遍:配色、配色、配色!!!好的配色等于成功了一半,第一步也是最重要的一步-提取SCI论文中喜欢的颜色。

  2. 数据准备

    热图数据主要来自于大家计算得到的相关系数矩阵,南同学这次的数据也是自己拟定的,大家这里可以随机应变。

  3. 函数使用

    此图主要用到的函数是热图函数—Heatmap。

   1. 配色

 首先找到类似的图片在PPT中取色,取色步骤同第一篇柱状图文章,需要注意的是Matlab中支持的RGB值为0-1之间,在取得RGB值后除以255即可。取色图片如下:

matlab热图,matlab,开发语言

将此图片复制到PPT中,插入形状—形状填充—取色器—取色—记录RGB值,将RGB值复制到Matlab中,最终保存为矩阵,这样颜色就提取好啦。 

matlab热图,matlab,开发语言

 在Matlab中保存为数据矩阵:

%% 配色数据保存
mycolor = [0.474509803921569,0.650980392156863,0.807843137254902;...
 0.682352941176471,0.823529411764706,0.898039215686275;...
 0.941176470588235,0.972549019607843,0.862745098039216;...
 0.992156862745098,0.968627450980392,0.705882352941177;...
 1,0.901960784313726,0.603921568627451];

 2. 数据准备

 数据是小编自己运用rand函数随机生成的0-1之间的矩阵,大家可以结合自己的数据进行替换或者更改。代码如下:

%% 随机生成相关性系数矩阵
clc;
clear;
close all;
X = rand(13); %X为0-1矩阵 
X = round(X,2); %获取矩阵的列数
B = ones(1,size(X,1));%全是1的向量
% 替换X矩阵对角元素,使其均为1
X(logical(eye(size(X))))=B;

3. 函数使用

 使用heatmap:用来绘制热图;heatmap(xvalues, yvalues, cdata);参数依次为 X轴变量名、Y轴变量名与数据矩阵;colormap:产生颜色柱并且赋色。

%% 开始绘制热图
% 命名所有变量名字,这里大家可以替换成自己需要的变量名
label_name = {'N1','N2','N3','N4','N5','N6','N7','N8','N9','N10','N11','N12','N13'};
xlabel_name = label_name;
ylabel_name = label_name;
% 热图函数为heatmap;开始绘制
hot_figure = heatmap(xlabel_name,ylabel_name,X,'FontSize',10);
hot_figure.GridVisible = 'off';
% 设置坐标区名字与图的大标题
hot_figure.Title = 'Heated';
hot_figure.XLabel = 'xlabel';
hot_figure.YLabel = 'ylabel';
%% 对热图上色—colormap函数
colormap(gca,mycolor);

这样最终一张论文热图就完成啦!

matlab热图,matlab,开发语言

matlab热图,matlab,开发语言

代码源文件与资料获取方式:

完整资料链接文章来源地址https://www.toymoban.com/news/detail-709348.html

到了这里,关于【MATLAB绘图进阶第3弹】Matlab绘制热图系列的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【MATLAB基础绘图第7棒】绘制各式柱状图

    绘制分组数据,并对 数据格式和边框 等进行设置,成图如下所示: MATLAB绘制代码如下: 图源:J2022-Observed decrease in light precipitation in part due to urbanization-Scientific Reports 成图如下: MATLAB代码如下: 区间范围柱状图 是柱状图的一种,能够更加清晰地展示各类目数据区间范围分布

    2024年02月09日
    浏览(45)
  • Matlab绘图系列教程-Matlab 34 种绘图函数示例(下)

    1.1 简介 关于本教程的目的与范围 欢迎来到Matlab绘图指南!本教程的目标是帮助您从一个绘图小白蜕变为Matlab绘图大神。无论您是科学研究人员、学生还是对数据可视化感兴趣的爱好者,本教程将为您揭示绘制高质量科学图表的技巧和策略,让您的图表在论文和报告中脱颖而

    2024年02月13日
    浏览(46)
  • 《MATLAB科研绘图与学术图表绘制从入门到精通》

    解锁MATLAB科研绘图魅力,让数据可视化成为你的科研利器! 1.零基础快速入门:软件操作+实战案例+图文、代码结合讲解,从入门到精通快速高效。 2.多种科研绘图方法:科研绘图基础+变量图形+极坐标图形+3D图形+地理信息可视化等,绘图技巧全面掌握。 3.实用性和艺术性兼

    2024年04月13日
    浏览(85)
  • Matlab进阶绘图第38期—蝴蝶图

    蝴蝶图 也称旋风图 ,是一种特殊的柱状图。 蝴蝶图一般 由左右两个水平柱状图组合而成,其形如蝴蝶展翅,可以很直观地展示两种数据直接的差异 。 本文使用自制的Butterfly小工具进行蝴蝶图的绘制,先来看一下成品效果: 特别提示:本期内容『数据+代码』已上传资源群

    2024年01月18日
    浏览(77)
  • Matlab进阶绘图第30期—冲击图

    冲击图是一种特殊的堆叠柱状图 。 与堆叠柱状图相比, 冲击图添加了相邻柱子中相同组分之间的连线,可以更加清晰地表达各组分占比情况 。 由于Matlab中未收录冲击图的绘制函数,因此需要大家自行解决。 本文使用自制的Fbarstacked小工具进行冲击图的绘制,先来看一下成

    2024年02月08日
    浏览(49)
  • 【MATLAB基础绘图第2棒】绘制柱状/饼图填充图

    带填充纹理的堆叠图是通过在原始堆叠图的基础上添加不同的纹理得到的,可以很好地解决由于 颜色区分不够 而导致的对象识别困难问题。 由于Matlab中未收录提供填充纹理选项,因此需要大家自行设法解决。本博客介绍三种填充方法。 MATLAB官网-Hatchfill2(Kesh Ikuma. Matlab Ce

    2024年02月03日
    浏览(44)
  • Matlab进阶绘图第39期—分组蝴蝶图

    分组蝴蝶图是蝴蝶图的一种变形 。 分组蝴蝶图一般 由左右两个水平分组柱状图组合而成,可以很直观地展示两种数据各组分之间的差异 。 本文使用自制的Butterfly小工具进行蝴蝶图的绘制,先来看一下成品效果: 特别提示:本期内容『数据+代码』已上传资源群中,加群的朋

    2024年01月23日
    浏览(52)
  • Matlab进阶绘图第12期—局部放大图

    最近资源群里有好几个朋友问我该 如何对一幅图上的局部区域进行放大展示,从而可以更好地描绘细节信息 …… 于是,便有了本期内容。 局部放大图的绘制方法有很多,但为了使用方便, 本文直接利用BaseZoom工具(Kepeng Qiu.  Matlab Central,  2022)进行局部放大图的绘制 ,先来看

    2024年02月06日
    浏览(54)
  • Matlab进阶绘图第23期—密度散点图

    密度散点图 本质上是一种 特征渲染的散点图 ,其 颜色表示某一点所在区域的密度信息 。 除了作图,密度散点图绘制的关键还在于密度的计算。 当然, 不管是作图还是密度的计算,这些在《Matlab论文插图绘制模板》和《Matlab点云处理及可视化》往期文章中都有介绍 。 为了

    2024年02月16日
    浏览(51)
  • Matlab进阶绘图第16期—三维填充折线图

    三维填充折线图是在三维折线图的基础上,对其与XOY平面之间的部分进行颜色填充,从而 能够更好地刻画细节变化 。 由于Matlab中未收录三维填充折线图的绘制函数,因此需要大家自行设法解决 。 本文使用自制的FilledPlot3小工具进行三维填充折线图的绘制,先来看一下成品效

    2024年02月08日
    浏览(92)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包