Vertical grid line for x=0

101 views (last 30 days)
Jan w
Jan w on 1 Jan 2017
Commented: Star Strider on 17 Dec 2020
I am using horizontal gridlines for a plot.
ax = gca;
ax.XGrid = 'off';
ax.YGrid = 'on';
How can I add only one vertical line through x=0?

Accepted Answer

Star Strider
Star Strider on 1 Jan 2017
You can plot a vertical line anywhere by duplicating the x-coordinate and plotting it against ylim:
figure(1)
plot([0 0], ylim, '-r')
ax = gca;
ax.XGrid = 'off';
ax.YGrid = 'on';

More Answers (2)

Image Analyst
Image Analyst on 1 Jan 2017
The best answer is to use YAxisLocation:
theta = linspace(-pi, pi, 800);
plot(theta, sin(theta), 'b-') % Plot something.
% Make axes go through origin instead of left and bottom sides of axes box.
ax = gca;
ax.XAxisLocation = 'origin'
ax.YAxisLocation = 'origin'
  4 Comments
Jan w
Jan w on 2 Jan 2017
Yes this works fine for me!
Image Analyst
Image Analyst on 2 Jan 2017
You're welcome. Maybe you could "Vote" for the answer (under my logo).

Sign in to comment.


the cyclist
the cyclist on 1 Jan 2017
Edited: the cyclist on 1 Jan 2017
line([0 0],[0 1],'Color','Black')
See line for details of setting the properties of the line.
  2 Comments
Brian Russell
Brian Russell on 16 Dec 2020
You simply need to write yline(0) or xline(0) for vertical and horizontal lines.
Star Strider
Star Strider on 17 Dec 2020
Note that xline and yline were introduced in R2018b, years after this was posted.

Sign in to comment.

Tags

Community Treasure Hunt

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

Start Hunting!