gpt4 book ai didi

matlab - 如何更改 `plotroc` 的图例中的类名?

转载 作者:行者123 更新时间:2023-12-05 06:44:18 25 4
gpt4 key购买 nike

我正在使用 plotroc 绘制多类分类器的结果.该文档有点参差不齐。我想知道如何将自动生成的图例更改为我的类(class)标签。

我有 17 个类(class)。我对 plotroc(target, output) 的初始调用产生了这个数字

ROC Curve

我尝试使用 legend(class_labels) 更新图例以包含我的类标签,其中 class_labels 是带有标签的 17x1 元胞数组。这是结果

ROC Curve with Class Labels

正如您所看到的,多个标签被分配给灰线,而不是简单地替换第一张图中的标签。

作为替代方案,文档还建议使用语法 plotroc(targets1,outputs2,'name1',...) 生成多个图,我假设每个类都有不同的阈值。所以我都试过了

plotroc(target, output, class_labels)

返回错误

Error using horzcat Dimensions of matrices being concatenated are not consistent.

Error in plotroc>update_plot (line 318) titleStr = [names{i} ' ROC'];

Error in plotroc (line 111) plotData = update_plot(param,fig,plotData,update_args{:});

plotroc(target, output, 'AtLocation', 'IsA', ... 'SymbolOf')

这也返回了一个错误

Error using plotroc (line 106) Incorrect number of input arguments.

有没有人成功使用 plotroc(targets1,outputs2,'name1',...) 语法或更改图例?

最佳答案

我还没有找到直接使用 plotroc 函数的解决方案,但是 roc 的结果可以使用 plot 绘制函数允许通过标准 Matlab 绘图选项进行更多自定义。

function myplotroc(target, output, class_labels)
[tpr,fpr,~] = roc(targets,outputs)
figure();
hold on;
set(gca, 'LineStyleOrder', {'-', ':', '--', '-.'}); % different line styles
for ii=1:length(class_labels)
plot(fpr{ii}, tpr{ii})
end
legend(class_labels);
end

关于matlab - 如何更改 `plotroc` 的图例中的类名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29995510/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com