How can I make a boxplot match at 0 with another plot?
Show older comments
Hi
I'm having trouble making a boxplot match at the origin with another plot (colored lines). The first plot works just fine, but as the boxplot works with a categorical x axis, it shifts away from the actual origin and I just cant make it match back into place.
Can anyone help me, please.

1 Comment
the cyclist
on 14 Jan 2023
Edited: the cyclist
on 14 Jan 2023
Here are a few things that would make it easier to help you. If you can do some or all of these things, you might have a better chance at getting a solution:
- Upload your data
- Upload your code
- Make a figure with just two panels: One that is how you want it, and one that is not how you want it
- Explain what you mean by "it shifts away from the actual origin". I'm not sure what "it" is (e.g. are you talking about the boxes, or the lines, or something else?). I don't know what the "actual origin" means.
Mainly, I don't know what exactly is supposed to "match at the origin". And even if I did understand that, it's probably not possible to give advice about how to fix that, without seeing your code, your data, or both.
Answers (1)
A workaround to solve your problem is to call the boxplots with zero values in between your actual data. E.g.
plot([1 2 3 4 5 6 7],[ 9 8 7 6 5 4 3 ],'-o')
hold on
x1 = rand(50,1);
x2 = ones(50,1);
boxplot([0 ; 5*x1 ; 0 ;0; x1*4;0;x1*8],[1; 2*x2; 3 ;4; 5*x2;6;7*x2])
In this way, the boxplots are located exactly at the same location as the other plot.
3 Comments
If this approach solves the issue, I would suggest filliing in with NaN rather than zeros. Then no box at all appears.
plot([1 2 3 4 5 6 7],[ 9 8 7 6 5 4 3 ],'-o')
hold on
x1 = rand(50,1);
x2 = ones(50,1);
boxplot([NaN ; 5*x1 ; NaN ;NaN; x1*4; NaN; x1*8],[1; 2*x2; 3 ;4; 5*x2;6;7*x2])
Constantino Carlos Reyes-Aldasoro
on 16 Jan 2023
that is better!
Isaac Elías
on 21 Feb 2023
Categories
Find more on Data Distribution Plots 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!
