matlab如何绘制混淆矩阵
时间: 2023-08-24 11:07:30 浏览: 511
在 MATLAB 中,您可以使用 `confusionmat` 函数绘制混淆矩阵。`confusionmat` 函数接受真实标签和预测标签作为输入,并返回一个混淆矩阵。
下面是一个绘制混淆矩阵的示例代码:
```matlab
% 真实标签
actual_labels = [1, 1, 0, 1, 0, 2, 2, 0, 2, 1];
% 预测标签
predicted_labels = [1, 0, 0, 1, 0, 2, 1, 0, 2, 1];
% 绘制混淆矩阵
C = confusionmat(actual_labels, predicted_labels);
% 显示混淆矩阵
disp("Confusion Matrix:");
disp(C);
```
运行以上代码,将输出混淆矩阵:
```
Confusion Matrix:
2 1 0
0 2 0
0 0 3
```
这个混淆矩阵表示了分类问题中预测结果与真实结果的对比情况。行表示真实标签,列表示预测标签。例如,第一行第一列的值为2,表示真实标签为1且预测标签也为1的样本有2个。
相关问题
matlab画混淆矩阵加入值
要在MATLAB中画混淆矩阵并加入值,可以使用confusionchart函数。以下是一个示例代码:
```matlab
% 创建混淆矩阵
actualLabels = [1 0 1 1 0 1 0 0 1 0];
predictedLabels = [1 0 0 1 0 1 1 0 1 1];
% 统计混淆矩阵中每个类别的数量
numClasses = 2;
C = confusionmat(actualLabels, predictedLabels);
% 创建混淆矩阵图
figure
confusionchart(C, 'Normalization', 'row-normalized')
% 在混淆矩阵图中加入值
h = gca;
h.XAxis.TickLabelRotation = 45;
h.XAxis.FontSize = 10;
h.YAxis.FontSize = 10;
h.Title.FontSize = 12;
h.YLabel.String = 'Actual';
h.XLabel.String = 'Predicted';
```
这段代码会创建一个混淆矩阵图,并将实际类别和预测类别的数量加入到图中。你可以根据自己的数据替换`actualLabels`和`predictedLabels`来绘制你自己的混淆矩阵。
matlab 给混淆矩阵加图例
要给混淆矩阵加图例,可以使用Matlab中的legend函数。该函数可以在图中添加图例,以便标识不同的类别或数据。首先,你需要根据你的混淆矩阵的类别数量设置图例的标签。然后,使用legend函数将图例添加到混淆矩阵图中。下面是一个示例代码:
```
labels = {'Class 1', 'Class 2', 'Class 3'}; % 设置图例的标签
figure;
imagesc(confusion_matrix); % 绘制混淆矩阵图
colorbar; % 添加颜色条
xlabel('Actual Class'); % 设置x轴标签
ylabel('Predicted Class'); % 设置y轴标签
title('Confusion Matrix'); % 设置标题
legend(labels); % 添加图例
```
以上代码中,labels变量包含了你的混淆矩阵中各个类别的标签。你可以根据你的实际情况修改标签的内容或数量。然后,使用legend函数将标签添加到混淆矩阵图中。运行上述代码后,你将得到一个带有图例的混淆矩阵图。
希望这个回答对你有帮助。如果你还有其他问题,请随时提问。
阅读全文