search
Search
Publish
menu
menu search toc more_vert
Robocat
Guest 0reps
Thanks for the thanks!
close
Comments
Log in or sign up
Cancel
Post
account_circle
Profile
exit_to_app
Sign out
help Ask a question
Share on Twitter
search
keyboard_voice
close
Searching Tips
Search for a recipe: "Creating a table in MySQL"
Search for an API documentation: "@append"
Search for code: "!dataframe"
Apply a tag filter: "#python"
Useful Shortcuts
/ to open search panel
Esc to close search panel
to navigate between search results
d to clear all current filters
Enter to expand content preview
icon_star
Doc Search
icon_star
Code Search Beta
SORRY NOTHING FOUND!
mic
Start speaking...
Voice search is only supported in Safari and Chrome.
Navigate to
A
A
share
thumb_up_alt
bookmark
arrow_backShare
Twitter
Facebook

Drawing a vertical line in Matplotlib

Programming
chevron_right
Python
chevron_right
Matplotlib
chevron_right
Cookbooks
chevron_right
Graphs Cookbook
schedule Jul 1, 2022
Last updated
local_offer PythonMatplotlib
Tags

To draw a vertical line in Matplotlib, use the axvline(~) function like so:

plt.axvline(x=2)

The output is as follows:

Changing the color

To change color of the line, add the color parameter:

color="red"
color="#FF0000"

Changing the line style

To change the styling of the line, add the linestyle parameter:

linestyle="dotted"
linestyle="dashed"

Specifying starting and ending points

By default, the line drawn by axvline(~) spans the entire height of the graph.

ymin and ymax

You could change this behaviour by specifying parameters ymin and ymax, both of which must be a number between 0 and 1.Here, 0 represents the bottom of your graph, while 1 represents the top of your graph.

To draw a vertical line from bottom 25% to top 75%:

plt.ylim(0, 10)
plt.axvline(x=2, ymin=0.25, ymax=0.75)

The output is as follows:

y-coordinates

Unfortunately, the axvline(~) method does not accept starting and ending y-coordinates. We can instead resort to the plt.plot(~) function, which does allow for y-coordinates.

To draw a vertical line from y=2 to y=8 at x=5:

plt.ylim(0, 10)
plt.plot([2,2], [2,8])

The output is as follows:

robocat
Published by Isshin Inada
Edited by 0 others
Did you find this page useful?
thumb_up
thumb_down
Ask a question or leave a feedback...
thumb_up
0
thumb_down
0
chat_bubble_outline
0
settings
Enjoy our search
Hit / to insta-search docs and recipes!