Extracting from boxchart function the median, quartiles, and whisker data.

55 次查看(过去 30 天)
Hello dear community. I've got mutliple comparisons that I have plotted with boxchart. When I hover the cursor over any boxoplot, I can see the median, quartile, and whisker info. But I'm having difficulty extracting from the boxchart properities the numerical values. My goal is to the save directly these data value that boxchart clearly produce into an array.
Here's some mock code for three boxplots :
y1 = rand(10,1);
y2 = rand(8,1);
y3 =rand(12,1);
X = [ones(length(y1),1); 2*ones(length(y2),1); 3*ones(length(y3),1)]; % boxchart positions for raw data
Y = [y1; y2; y3]; % raw data values
b = boxchart(X,Y);
If I where to type "b.DataTipTemplate.DataTipRows.Value" I can see the variables Whiskers and Medians and others but cannot access them with dot notation. How would I get the values for say the second box plot?
b.DataTipTemplate.DataTipRows.Value
ans = 'Position'
ans = 'Num Points'
ans = 'Num Outliers'
ans = 'Median'
ans = 'Quartiles'
ans = 'Whiskers'
ans = 'Outlier Value'
Thanks in advance.

采纳的回答

Matt J
Matt J 2023-5-30
编辑:Matt J 2023-5-30
I don't believe those quantitites are directly available as permanent property data. When you position the cursor over one of the boxes, a GUI callback function is invoked to calculate them on the fly from the XData, YData property values. You can, of course, write your own function to do so as well.
  3 个评论
hxen
hxen 2023-5-30
Agree. It was misleading in suggesting dot-indexed calling functionality. Thank you again for your time in writing.

请先登录,再进行评论。

更多回答(2 个)

the cyclist
the cyclist 2023-5-30
As you may know, but just in case you do not, there is also the boxplot function, which has more flexibility than boxchart.

hxen
hxen 2023-5-30
Thank you all for the help. Much appreciated.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by