Skip to content
Related Articles

Related Articles

Plot a Point or a Line on an Image with Matplotlib
  • Last Updated : 17 Dec, 2020

Prerequisites: Matplotlib

Matplotlib and its constituents support a lot of functionality. One such functionality is that we can draw a line or a point on an image using Matplotlib in python.

Approach

  • Import modules
  • Read the image
  • Plot the line or point on the image
  • Display the plot/image.

Image Used:

Implementation using the above approach on the given image is provided below:



Example 1 : Drawing a point on the image.

Attribute used: marker

It is used to define what marker type should the point be displayed in.

Python3




from matplotlib import image
from matplotlib import pyplot as plt
  
# to read the image stored in the working directory
data = image.imread('sunset-1404452-640x480.jpg')
  
# to draw a point on co-ordinate (200,300)
plt.plot(200, 350, marker='v', color="white")
plt.imshow(data)
plt.show()

Output:

Example 2 : Draw a line on the image

To draw a line we will give the co-ordinates of two points in the plot function.



Attribute used: linewidth

Used to specify the width of the line.

Python3




from matplotlib import image
from matplotlib import pyplot as plt
  
# to read the image stored in the working directory
data = image.imread('sunset-1404452-640x480.jpg')
  
# to draw a line from (200,300) to (500,100)
x = [200, 500]
y = [300, 100]
plt.plot(x, y, color="white", linewidth=3)
plt.imshow(data)
plt.show()

Output: 

Example 3 : Draw two intersecting lines crossing each other to make X.

Python3




from matplotlib import image
from matplotlib import pyplot as plt
  
# to read the image stored in the working directory
data = image.imread('sunset-1404452-640x480.jpg')
  
# to draw first line from (100,400) to (500,100)
# to draw second line from (150,100) to (450,400)
x1 = [100, 500]
y1 = [400, 100]
x2 = [150, 450]
y2 = [100, 400]
plt.plot(x1, y1, x2, y2, color="white", linewidth=3)
plt.axis('off')
plt.imshow(data)
plt.show()

Output : 

 Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.  

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning – Basic Level Course

My Personal Notes arrow_drop_up
Recommended Articles
Page :