I was also going to suggest adding a varagin to delineate a step-size, ex:
%add a varagin, in this case I am calling it step which can describe the distance between thresholds to be calculated
%find unique values in z
elseif length(step)==1 % the fixed step size is being requested
% later in guiseppe code just do labels=step
Also, Guiseppe, I implemented your standard error and pythagoras into my code which generated data that will probably used in an upcoming paper. Do you mind being acknowledged or are there any actual articles to cite? Your call. And lastly, I have a GUI that is pretty beta, but works.
Isn't 1-spec equal to false positive rate? I think this is backward on the output partest and roseplot figures (red should be false positive, and yellow should be false negative). In the code it seems like these values (fp1 and fp2) are used correctly throughout and just mis-labelled on the output graphs. Would you mind confirming this? As always, thanks for the excellent code. The comments in this one are really great and I learned a ton going through it.
A great addition to the Fileexchange!
Just a quick comment. I don't know why no one else faces the same troubles, but on my system (Matlab 2011a) the call:
fails with the following error:
??? Maximum recursion limit of 500 reached. Use
to change the limit. Be aware that exceeding your
available stack space can
crash MATLAB and/or your computer.
Error in ==> usejava
When I looked into the code with debug, I was able to identify it as the line 134:
p = clipboard('paste');
for some reason this line "calls" the "paste"-file again, leading to infinite recursion.
(although I don't know why clipboard calls a function instead of performing its "supposed" action)
Anyways: I solved the problem by simply changing the filename:
paste.m -> mypaste.m
copy.m -> mycopy.m
And in addition in "copy.m" you also need to change the line 111 to "mycopy".
After this it works like a charm. :-)
Nice. One issue with the verbose option: when set to 0, it doesnt fill the .co part of the output anymore. To fix, switch the lines
m=[table(CSe,1) table(CSp,1) CE table(CEff,1)];
near the end of the code (line 300 or so)