How does I bring the line plot in front of the bar?

237 views (last 30 days)
I am makeing the graph to illustrate some information with plot function and bar function.
Problem is the line made by plot function is always back of the bar, so some part of line is hided like a image below.
It is possible to control the size of axis to make not to be overlaped, but I do not want to do that.
How can I bring the line in front of the bar?

Accepted Answer

Kevin Phung
Kevin Phung on 25 Feb 2019
Use uistack();
a = plot(x,y) %let a be the handle to plot 1
b= plot(x2,y2) %let b be the handle to plot 2
uistack(a,'top') %you can also do uistack(b,'bottom')
  1 Comment
Adam Danz
Adam Danz on 5 Dec 2021
Edited: Adam Danz on 5 Dec 2021
As of Matlab R2021b, uistack does not work with yyaxis since the objects are assigned to different rulers.

Sign in to comment.

More Answers (1)

Jakub Schneider
Jakub Schneider on 25 Nov 2020
When using multiple y axis plot (yyaxis left and yyaxis right) the yyaxis right plot is on the top. So just switch left to right and the line will be over the bars.
  1 Comment
Jakob Weis
Jakob Weis on 8 Jun 2021
When using two y-axes, simply switching the data/axes is rarely an option. The primary dataset has to go on the primary/left axis and the secondary dataset on the secondary right/axis.
Here's a workaround for this case: https://www.mathworks.com/matlabcentral/answers/280015-draw-stack-order-for-yyaxis

Sign in to comment.

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!