data = rand(20,24)

month = repmat({'jan' 'feb' 'mar' 'apr'

'may' 'jun' 'jul' 'aug' 'sep' 'oct' 'nov' 'dec'},1,2);

simobs =

[repmat({'sim'},1,12),repmat({'obs'},1,12)];

boxplot(data,{month,simobs},'colors',repmat('rb',1,12),'factorgap',[5

2],'labelverbosity','minor');

另一种方法是利用不同坐标使用hold on在同一幅图上画箱线图

% Boxplot for the observed temperature

from January to December

Temp_O = [Jan_O, Feb_O, Mar_O, Apr_O,

May_O, Jun_O, Jul_O, Aug_O, Sep_O, Oct_O, Nov_O, Dec_O];

position_O =

1:1:12;

% Define position for 12 Month_O

boxplots

box_O =

boxplot(Temp_O,'colors','b','positions',position_O,'width',0.18);

set(gca,'XTickLabel',{' '}) %

Erase xlabels

hold on % Keep the

Month_O boxplots on figure overlap the Month_S

boxplots

% Boxplot for the simulated temperature

from January to December

Temp_S = [Jan_S, Feb_S, Mar_S, Apr_S,

May_S, Jun_S, Jul_S, Aug_S, Sep_S, Oct_S, Nov_S, Dec_S];

position_S =

1.3:1:12.3; % Define position for 12 Month_S

boxplots

box_S =

boxplot(Temp_S,'colors','r','positions',position_S,'width',0.18);

hold

off % Insert texts and

labels

a4c26d1e5885305701be709a3d33442f.png

以上两种方法均可画多组的箱线图

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐