boxplot change X-Axis

160 views (last 30 days)
Marco
Marco on 29 Jan 2022
Commented: Marco on 29 Jan 2022
Helllo,
I would like to plot a data set in several boxplots and display the median curve. Each data set has an X-value. In order to display the progression correctly, I would also like to display the distance between the values on the X-axis correctly, i.e. the distance between 100 and 300 should be correspondingly smaller than that between 300 and 1000. However, if I solve it as in the short example below, the X-values are only labels and the distances between two boxes are always the same, so that my progression is displayed distorted.
Is there a way to display this accordingly? Thank you!
y = [10 9 6 ; 9 8 7; 7 5 4]
x = [100 300 1000]
median = median(y);
boxplot(y, x)
hold on
plot(median, 'b','Marker','o')
hold off

Accepted Answer

Voss
Voss on 29 Jan 2022
Edited: Voss on 29 Jan 2022
You can use the 'Positions' argument to boxplot(), see below. (I also changed your variable "median" to be "my_median" so it doesn't conflict with the function medan() when you try to run this same code again (if it is a script).)
y = [10 9 6 ; 9 8 7; 7 5 4]
y = 3×3
10 9 6 9 8 7 7 5 4
x = [100 300 1000]
x = 1×3
100 300 1000
my_median = median(y);
boxplot(y, x, 'Positions',x)
hold on
plot(x,my_median, 'b','Marker','o')
hold off
  1 Comment
Marco
Marco on 29 Jan 2022
Thank you! That`s exactly what I was looking for.

Sign in to comment.

More Answers (0)

Tags

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!