Find the number of red marks in box plot
25 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I have the box plot like this. How can I find the number of the red marks?
T = [1;-1;0.5;-0.5;0.75;-0.75;-6;-7;4;3];
h = boxplot(T,'Labels',{'1'});
0 Kommentare
Akzeptierte Antwort
Chris
am 12 Dez. 2021
Bearbeitet: Chris
am 12 Dez. 2021
One method, which may not necessarily correlate to a boxplot in all situations (but probably works for the default boxplot), is to use isoutlier:
T = [1;-1;0.5;-0.5;0.75;-0.75;-6;-7;4;3];
outliers = isoutlier(T);
numOutliers = sum(outliers)
h = boxplot(T,'Labels',{'1'});
If you need to be sure you have the exact count in the boxplot, you can get the data in the image and drill down to find the outliers:
ax = gca; % Get current axes
bxplt = ax.Children; % The boxplot
plts = bxplt.Children % Individual plots that make up the boxplot.
% plts(1) holds the outliers
numRedMarks = numel(plts(1).YData)
% XData or YData -- points that make up the Outliers plot
To programmatically find the plots of outliers (in the event that you have more than one box):
idxs = find(strcmp({plts.Tag},'Outliers'));
outlierCell = {plts(idxs).YData}
numMarksFirstPlot = numel(outlierCell{1})
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Axis Labels finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!