How to create two-dimensional boxplots

51 views (last 30 days)
Hey all,
I would like to create a two-dimensional boxplot. So far I only managed to create 1D Boxplots with fixed x-value using boxchart. The result should be something like the below image:
On stackoverflow I found a solution for R and Python (matlplotlib), unfortunately I didn't find anything for Matlab.
R-solution
Python (matplotlib) solution
I would be happy if someone has a clever idea for the solution. Thanks in advance and best regards,
Tom

Accepted Answer

Kevin Holly
Kevin Holly on 16 Jan 2023
Edited: Kevin Holly on 16 Jan 2023
x = rand(1,30);
y = rand(1,30);
tiledlayout(1,2)
nexttile
scatter(x,y,'filled','r');
nexttile
boxchart(median(y)*ones(size(x)),x)
hold on
boxchart(median(x)*ones(size(y)),y,"Orientation","horizontal")
  1 Comment
Tom Rüther
Tom Rüther on 16 Jan 2023
Dear Kevin,
thank you for this very nice and easy solution!
Best regards,
Tom

Sign in to comment.

More Answers (1)

Constantino Carlos Reyes-Aldasoro
Have a look at this code:
It describes how to do 3D boxplots, if you only have one grouping, it would go down to 2D
  1 Comment
Tom Rüther
Tom Rüther on 16 Jan 2023
Dear Constantino,
Thank you for your quick reply, unfortunately this does not work for the desired plot as I would like to display the information in x-direction as well.

Sign in to comment.

Categories

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

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!