Version 3.0.0
Fork me on GitHub

Table Of Contents


Axes.axvline(x=0, ymin=0, ymax=1, **kwargs)[source]

Add a vertical line across the axes.

x : scalar, optional, default: 0

x position in data coordinates of the vertical line.

ymin : scalar, optional, default: 0

Should be between 0 and 1, 0 being the bottom of the plot, 1 the top of the plot.

ymax : scalar, optional, default: 1

Should be between 0 and 1, 0 being the bottom of the plot, 1 the top of the plot.

line : Line2D
Other Parameters:
**kwargs :

Valid kwargs are Line2D properties, with the exception of 'transform':

Property Description
agg_filter a filter function, which takes a (m, n, 3) float array and a dpi value, and returns a (m, n, 3) array
alpha float
animated bool
antialiased bool
clip_box Bbox
clip_on bool
clip_path [(Path, Transform) | Patch | None]
color color
contains callable
dash_capstyle {'butt', 'round', 'projecting'}
dash_joinstyle {'miter', 'round', 'bevel'}
dashes sequence of floats (on/off ink in points) or (None, None)
drawstyle {'default', 'steps', 'steps-pre', 'steps-mid', 'steps-post'}
figure Figure
fillstyle {'full', 'left', 'right', 'bottom', 'top', 'none'}
gid str
in_layout bool
label object
linestyle {'-', '--', '-.', ':', '', (offset, on-off-seq), ...}
linewidth float
marker unknown
markeredgecolor color
markeredgewidth float
markerfacecolor color
markerfacecoloralt color
markersize float
markevery unknown
path_effects AbstractPathEffect
picker float or callable[[Artist, Event], Tuple[bool, dict]]
pickradius float
rasterized bool or None
sketch_params (scale: float, length: float, randomness: float)
snap bool or None
solid_capstyle {'butt', 'round', 'projecting'}
solid_joinstyle {'miter', 'round', 'bevel'}
transform matplotlib.transforms.Transform
url str
visible bool
xdata 1D array
ydata 1D array
zorder float

See also

Add vertical lines in data coordinates.
Add a vertical span (rectangle) across the axis.


  • draw a thick red vline at x = 0 that spans the yrange:

    >>> axvline(linewidth=4, color='r')
  • draw a default vline at x = 1 that spans the yrange:

    >>> axvline(x=1)
  • draw a default vline at x = .5 that spans the middle half of the yrange:

    >>> axvline(x=.5, ymin=0.25, ymax=0.75)

Examples using matplotlib.axes.Axes.axvline