绘图计数值

时间:2012-04-12 17:59:31

标签: matlab plot

我有一个功能,可以找到四个人测试的正确和错误结果。即在每次运行中,正确有4个条目与错误相同。

测试将进行10次。从纠正的答案中可以看出这一点。

我想以图形方式表示1名学生的表现或进步。

希望我现在很清楚。 例如:

 run = 1     correct = 5     mistake=5  
 .
 .
 .
 run = n     correct = 3     mistake=7 

我的问题是如何以图形方式表示我的结果? 需要查看n次运行的正确和错误计数的图形表示。

我尝试了绘图和直方图,但它们不是一个好的表示

在Matlab中不是专业人士,你能建议吗?

示例:10次运行:

 corrects = 

[1x4 double]    [1x4 double]    [1x4 double]    [1x4 double]    [1x4 double]    [1x4   double]    [1x4 double]    [1x4 double]    [1x4 double]    [1x4 double]

我做了:    图(5);     bar([错误{1};更正{1}]); these are the four values of 4 persons in the first test

但我需要的是人1的10次测试

我试过了:

 bar([mistakes{test}(1) ; corrects{test}(1)]);

weird! 这些都不是很好的演讲

2 个答案:

答案 0 :(得分:0)

因此,要比较所有n次运行的正确与错误:

correct = zeros(n, 1);
wrong = zeros(n, 1);
for run=1:n
  [correct(run), wrong(run)] = your_function();
end
bar([correct wrong]);

因此,您为阵列中的每次运行存储正确/错误。正确(1)将是第一次运行时正确的数字等。吧([正确错误]);将为每次运行显示两个条形 - 正确的蓝色条和错误的红色条。

答案 1 :(得分:0)

我计算每次运行的错误分类率。

假设您有向量run = 1:n;correct = randi(11,1,n)-1;。然后是mistake = 10 - correct;

错误分类率为MCR = mistake./10;

您可以将分布图绘制为箱线图:

boxplot(MCR)

重要的是比较具有不同参数的运行之间的MCR分布。因此,您将拥有一组运行,并且可以在boxplot上分隔它们。

此外,您可以在箱线图上绘制真实的MCR值,而不是它们的分位数。请参阅我的问题,了解如何beeswarm plot

修改

如果您的正确结果取决于某些分数,则可以生成所谓的 ROC (接收器操作特性)曲线。在这一点上,我会推荐你​​wiki article。检查它是否是你想要的。