Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

matplotlib.patches.Rectangle in Python

  • Last Updated : 27 Apr, 2020

Matplotlib is an amazing visualization library in Python for 2D plots of arrays. Matplotlib is a multi-platform data visualization library built on NumPy arrays and designed to work with the broader SciPy stack.

matplotlib.patches.Rectangle

The matplotlib.patches.Rectangle class is used to rectangle patch to a plot with lower left at xy = (x, y) with specified width, height and rotation angle.

Syntax: class matplotlib.patches.Rectangle(xy, width, height, angle=0.0, **kwargs)

Parameters:

  • xy: Lower left point to start the rectangle plotting
  • width : width of the rectangle
  • height: Height of the rectangle.
  • angle: Angle of rotation of the rectangle.

The below table has a list of valid kwargs;

PROPERTYDESCRIPTION
agg_filtera filter function that takes a (m, n, 3) float array and a dpi value that returns a (m, n, 3) array
alphafloat or None
animatedbool
antialiased or aaunknown
capstyle{‘butt’, ’round’, ‘projecting’}
clip_boxBbox
clip_onbool
clip_path[(Path, Transform)|Patch|None]
colorcolor or sequence of rgba tuples
containscallable
edgecolor or ec or edgecolorscolor or None or ‘auto’
facecolor or fc or facecolorscolor or None
figurefigure
fillbool
gidstr
hatch{‘/’, ‘\’, ‘|’, ‘-‘, ‘+’, ‘x’, ‘o’, ‘O’, ‘.’, ‘*’}
in_layoutbool
joinstyle{‘miter’, ’round’, ‘bevel’}
linestyle or ls{‘-‘, ‘–‘, ‘-.’, ‘:’, ”, (offset, on-off-seq), …}
linewidth or linewidths or lwfloat or None
path_effectsAbstractPathEffect
pickerNone or bool or float or callable
path_effectsAbstractPathEffect
pickerfloat or callable[[Artist, Event], Tuple[bool, dict]]
rasterizedbool or None
sketch_params(scale: float, length: float, randomness: float)
snapbool or None
transformmatplotlib.transforms.Transform
urlstr
visiblebool
zorderfloat

Example 1:




import numpy as np
import matplotlib.pyplot as plt
from matplotlib.patches import Rectangle
  
  
# The image
X = np.arange(16).reshape(4, 4)
  
# highlight some feature in the
# middle boxes.
fig = plt.figure()
  
ax = fig.add_subplot(111)
ax.imshow(X, cmap = plt.cm.gray,
          interpolation ='nearest')
ax.add_patch( Rectangle((0.5, 0.5),
                        2, 2,
                        fc ='none'
                        ec ='g',
                        lw = 10) )
  
plt.show()

Output:

Example 2:




import matplotlib
import matplotlib.pyplot as plt
  
  
fig = plt.figure()
ax = fig.add_subplot(111)
  
rect1 = matplotlib.patches.Rectangle((-200, -100),
                                     400, 200,
                                     color ='green')
  
rect2 = matplotlib.patches.Rectangle((0, 150),
                                     300, 20,
                                     color ='pink')
  
rect3 = matplotlib.patches.Rectangle((-300, -50),
                                     40, 200,
                                     color ='yellow')
  
ax.add_patch(rect1)
ax.add_patch(rect2)
ax.add_patch(rect3)
  
plt.xlim([-400, 400])
plt.ylim([-400, 400])
  
plt.show()

Output:


My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!