【Matlab】绘制混淆矩阵示意图+colormap调整方法

news/2024/12/23 16:17:04 标签: matlab, 矩阵, 开发语言

主代码

matlab">%https://blog.csdn.net/weixin_42943114/article/details/81811556
%https://blog.csdn.net/Mark711/article/details/141144280
clc
clear
close all
warning off
%% 原始数据
% 假设groundTruth和predictions是已经定义好的向量
TrueLabels = [1 2 1 3 2 3 1 3 2 1 4 5 1 2 2 2];%
PredictedLabels = [1 1 2 3 2 2 1 3 3 1 4 5 1 2 2 2];%
[C,~] = confusionmat(TrueLabels, PredictedLabels);

%% 绘制混淆矩阵
figure(1)
imagesc(C);
% 显示每个单元格的数值
[numRows, numCols] = size(C);
for i = 1:numRows
    for j = 1:numCols
        text(j, i, num2str(C(i,j)), 'HorizontalAlignment', 'center', 'Color', 'white',"FontSize",30);%字体大小为30
    end
end
colormap('parula');%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%colormap可自定义
colorbar%产生colorbar
% 添加标题和轴标签
title('Confusion Matrix');
xlabel('Predicted Labels');
ylabel('True Labels');
set(gca,'xticklabel',{'one ','two','three','four','five'},'XTickLabelRotation',30)%设置横轴和横轴标签大小
set(gca,'yticklabel',{'one','two','three','four','five'})%设置纵轴
set(gca,'xtick',1:5)
set(gca,'ytick',1:5)
% set(gca,'FontSize',14,'Fontname', 'Times New Roman');%设置坐标系的数字大小
ZT=30;%字体30号
set(gca,'FontSize',ZT);
aaa=2;
set(gcf,'unit','centimeters','position',[2 2 16*aaa 9*aaa]);
set(gca,"FontName","Times New Roman","FontSize",ZT,"LineWidth",2);

结果
在这里插入图片描述

调整colormap的方法

手动调整
(1)编辑-颜色图
在这里插入图片描述(2)若修改最右侧的颜色,双击最右侧颜色下面的标签
在这里插入图片描述
(3)选择一个颜色,点击“确定”即可
在这里插入图片描述
(4)以红色为例,系统会自动切换渐变色
在这里插入图片描述


http://www.niftyadmin.cn/n/5796736.html

相关文章

【落羽的落羽 C语言篇】数据存储简介

文章目录 一、整型提升1. 概念2. 规则 二、大小端字节序1. 概念2. 练习练习1练习2 三、浮点数在内存中的存储1. 规则2. 练习 一、整型提升 1. 概念 C语言中,整型算术运算至少是以“缺省整型类型”(int)的精度来进行的。为了达到这个精度&am…

Android笔试面试题AI答之Android基础(3)

文章目录 1.谈一谈 Android 的安全机制一、系统架构层面的安全设计二、核心安全机制三、其他安全机制与措施 2.Android 的四大组件是哪四大?3.Android 的四大组件都需要在清单文件中注册吗?4.介绍几个常用的Linux命令一、文件和目录管理二、用户和权限管…

GESP202309 二级【小杨的 X 字矩阵】题解(AC)

》》》点我查看「视频」详解》》》 [GESP202309 二级] 小杨的 X 字矩阵 题目描述 小杨想要构造一个 的 X 字矩阵( 为奇数),这个矩阵的两条对角线都是半角加号 ,其余都是半角减号 - 。例如,一个 5 5 5 \times 5 5…

C++的封装(十四):《设计模式》这本书

很多C学习者学到对C语言有一定自信后,会去读一下《设计模式》这本书。希望能够提升自己的设计水平。 据我所知,围绕C语言出了很多书。因为正好赶上泡沫经济时代。大家一拥而上,自己半懂不懂就出书,抢着出书收割读者,出…

Java阶段四-SpringBoot02

第4章-第2节 一、知识点 Mybatis-Plus、Lambda 二、目标 理解什么是Mybatis-Plus 理解Mybatis和Mybatis-Plus的区别 学会使用Mybatis-Plus的CRUD 条件构造器的使用 分页查询的使用 三、内容分析 重点 学会使用Mybatis-Plus的CRUD 什么是查询过滤,有什么用…

【系统移植】NFS服务器环境搭建——挂载根文件系统

什么是NFS? NFS(Network File System)即网络文件系统,其基于UDP/IP 使用NFS能够在不同计算机之间通过网络进行文件共享,能使使用者访问网络上其它计算机中的文件就像在访问自己的计算机一样,文件只存在于服…

C++中如何实现序列化和反序列化?

概念 在C中,序列化和反序列化通常需要通过自定义代码将对象的状态转换为字节流,或者将字节流转换回对象。这可以通过文件操作、网络传输或其他形式的存储来实现。 使用简单的文件流 我们可以通过 ofstream 和 ifstream 类来实现基本的序列化与反序列化…

[react 3种方法] 获取ant组件ref用ts如何定义?

获取ant的轮播图组件, 我用ts如何定义? Strongly Type useRef with ElementRef | Total TypeScript import React, { ElementRef } from react; const lunboRef useRef<ElementRef<typeof Carousel>>(null); <Carousel autoplay ref{lunboRef}> 这样就…