Clear Filters
Clear Filters

How to align XTicks with boxplots, code and the output is attached ?

8 views (last 30 days)
rmse1=[rmse_wavelet_anfis_his;rmse_wavelet_anfis;rmse_QDM_his;rmse_QDM;...
rmse_QM_his;rmse_QM;rmse_raw_his;rmse_raw];
mae1=[mae_wavelet_anfis_his;mae_wavelet_anfis;mae_QDM_his;mae_QDM;...
mae_QM_his;mae_QM;mae_raw_his;mae_raw];
g = ones(size(rmse_raw));
g = [g;g*2;g*3;g*4;g*5;g*6;g*7;g*8];
g=categorical(g);
p= tiledlayout(1,2,'TileSpacing','none');
ax1 = nexttile;
b1= boxchart(ax1,g,rmse1,'GroupByColor',g,'BoxWidth',3);
ax2=nexttile;
b2= boxchart(ax2,g,mae1,'GroupByColor',g,'BoxWidth',3);
for i=1:8
remaind=rem(i,2);
if remaind==1
b1(i).SeriesIndex=1;
b2(i).SeriesIndex=1;
else
b1(i).SeriesIndex=2;
b2(i).SeriesIndex=2;
end
end

Accepted Answer

Cris LaPierre
Cris LaPierre on 29 Apr 2023
Edited: Cris LaPierre on 30 Apr 2023
When you group by color, boxchart expects there to be a boxplot for each group at each tick. It therefore makes space for that, centering the grouped boxplots around each tick.
If you want to set the color for each boxchart and have it aligned with an xtick, you must plot each boxplot individually, as Adam Danz shows in the linked answer.
  1 Comment
Avijit Paul
Avijit Paul on 30 Apr 2023
Thanks a lot. Matlab can update the boxchart function, for this scenario that, whenever there is one boxchart for one xtick, it can automatically allign with the xticks.

Sign in to comment.

More Answers (0)

Categories

Find more on Graphics Object Identification in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!