Vertical grid line for x=0
Ältere Kommentare anzeigen
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?
Akzeptierte Antwort
Weitere Antworten (2)
Image Analyst
am 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 Kommentare
Image Analyst
am 2 Jan. 2017
I don't understand. Normally the Y axis is at the left hand side of the axes box. If you want it to remain there, then just don't set YAxisLocation. If you want to move it so that it crosses at the x=0 line, then set YAxisLocation = 'origin'.
The only way to not move the Y axis and have it still be on the left hand side, and to have that left hand side also be the x=0 location is to set xlim to be 0:
% Get current axes limits
xl = xlim();
% Set xl(1) = 0
xl(1) = 0;
% Update the x axes limits.
xlim(xl);
Is that what you want?
Jan w
am 2 Jan. 2017
Image Analyst
am 2 Jan. 2017
You're welcome. Maybe you could "Vote" for the answer (under my logo).
the cyclist
am 1 Jan. 2017
Bearbeitet: the cyclist
am 1 Jan. 2017
line([0 0],[0 1],'Color','Black')
2 Kommentare
Brian Russell
am 16 Dez. 2020
You simply need to write yline(0) or xline(0) for vertical and horizontal lines.
Star Strider
am 17 Dez. 2020
Note that xline and yline were introduced in R2018b, 1½ years after this was posted.
Kategorien
Mehr zu Graphics Object Programming finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!