Nils Wagner wrote:
>> How can I add vertical/horizontal lines (x=constant, y=constant
>> respectively) to an existing plot with matplotlib ?
> I've always done something like:
> plot(x,y) a=axis() plot(a[0:2],[50,50],'k')
> for example, to get a line at y=50. If there's something
> shorter I'm open to suggestions.
if you want to plot a line in data coordinates, you can use vline
plot([0,1,2],[3,4,5])
vlines([1], [4,5], hold=True)
See also vlines. This x and y location of this line will "move" with
the data when you pan and zoom.
If you want to plot a line in axes coords, us axvline, where x is in
data coords but y is now interpreted as a fraction of the axes width
and the x location will not move with pans and zooms. Thus if you
want a vertical bar at x=1 that ranges from the top to the bottom, do
axvline(1) # ymin=0 (bottom) and ymax=1 (top) default
The x location moves with pan/zoom but the y data are fixed.
JDH