boxplotの中央​値の消去&ひげを実線​にする方法

23 views (last 30 days)
Ohashi Asuka
Ohashi Asuka on 24 Mar 2020
Commented: Ohashi Asuka on 27 Mar 2020
タイトルの通りですが,boxplotのオプションの設定方法が分かりません.
boxplotの中央値の消去(白線でもOK)し,ひげを実線にしたいです.
boxplot(x,'PlotStyle','compact')とすると,実線のひげの箱ひげ図が書けますが,
今回はボックス自体は元のままにしたいので,('PlotStyle','compact')は使えません.

Accepted Answer

Kenta
Kenta on 25 Mar 2020
clear;clc;close all
rng default
x = randn(100,10);
f=figure
xx=[1:10];
boxplot(x,'positions',xx)
% Find handle for median line and set visibility off
h = findobj(gca,'Tag','Median');
set(h,'Visible','off');
こんにちは、findobj関数で、中央値を参照し、visible => offとすると、以下のようになります。ただ、破線を実線にする方法はわかりませんでした。
  2 Comments
Akira Agata
Akira Agata on 25 Mar 2020
Edited: Akira Agata on 25 Mar 2020
こんにちは。Kentaさんご指摘のとおり、まずfindobj関数を使って対象となるラインオブジェクトを抽出したうえで、プロパティ値(今回のケースでは 'LineStyle' など)を調整することで実現可能です。一例を以下に示します。
% Sample data
rng('default');
x = randn(100,2);
% Boxplot
figure
boxplot(x)
% Set 'Median' line style
h = findobj(gca,'Tag','Median');
set(h,'LineStyle','none');
% Set 'Upper/Lower Whisker' line style
h = findobj(gca,'Tag','Lower Whisker','-or','Tag','Upper Whisker');
set(h,'LineStyle','-');
Ohashi Asuka
Ohashi Asuka on 27 Mar 2020
Kentaさん,Akira Agataさん,ご回答ありがとうございます.
とても分かりやすく教えてくださり,助かりました.

Sign in to comment.

More Answers (0)

Tags

Products


Release

R2019b

Community Treasure Hunt

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

Start Hunting!