Box plotのボックス内の色を変更する方法

10 visualizzazioni (ultimi 30 giorni)
KT
KT il 5 Apr 2020
Commentato: KT il 10 Apr 2020
x = normrnd(5,1,100,1);
y = normrnd(6,1,100,1);
X = [x,y];
boxplot(X,'ColorGroup',[ ]);
とすると,BOX内の色を添付した例のように変更したい場合どのように変更しますか.
ColorGroupをどのように変更するのでしょうか.
よろしくお願い申し上げます.

Risposta accettata

Akira Agata
Akira Agata il 8 Apr 2020
R2020aでMATLABの基本関数に追加されたboxchartを使うのはいかがでしょうか?
たとえば以下のようにすると、Box内と外れ値のマーカー色をグレーに指定することができます。
figure
boxchart(x,'BoxFaceColor',[0.5 0.5 0.5],'MarkerColor',[0.5 0.5 0.5])
  1 Commento
KT
KT il 8 Apr 2020
ご回答ありがとうございます。
boxchartの方が簡便で分かりやすそうです.
MATLAB R2020aの導入も考慮したいと考えます.

Accedi per commentare.

Più risposte (1)

Etsuo Maeda
Etsuo Maeda il 8 Apr 2020
別解でPatchで頑張るという方法もあります
clear; close all; rng default;
x = normrnd(5, 1, 100, 1);
y = normrnd(6, 1, 100, 1);
boxplot([x, y], 'Color', [0 0 0], 'Symbol', 'o');
h = findobj(gca, 'Tag', 'Box');
% draw patch with color
for k = 1:length(h)
patch(get(h(k), 'XData'), get(h(k), 'YData'), [0.8 0.8 0.8], 'FaceAlpha', 0.8);
end
% send patch from front to back
ax = gca;
ax.Children = ax.Children([end 1:end-1]);
HTH
  3 Commenti
Etsuo Maeda
Etsuo Maeda il 9 Apr 2020
% send patch from front to back
ax = gca;
ax.Children
ax.Children = ax.Children([end 1:end-1]);
ax.Children
として、何がCommand Windowに表示されているのか確認してみてください。
KT
KT il 10 Apr 2020
ご回答ありがとうございました。

Accedi per commentare.

Prodotti


Release

R2018b

Community Treasure Hunt

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

Start Hunting!