You are reading an old version of the documentation (v3.1.0). For the latest version see https://matplotlib.org/stable/gallery/shapes_and_collections/ellipse_demo.html
Version 3.1.0
matplotlib
Fork me on GitHub

Table of Contents

Related Topics

Ellipse Demo

Draw many ellipses. Here individual ellipses are drawn. Compare this to the Ellipse collection example.

import matplotlib.pyplot as plt
import numpy as np
from matplotlib.patches import Ellipse

NUM = 250

ells = [Ellipse(xy=np.random.rand(2) * 10,
                width=np.random.rand(), height=np.random.rand(),
                angle=np.random.rand() * 360)
        for i in range(NUM)]

fig, ax = plt.subplots(subplot_kw={'aspect': 'equal'})
for e in ells:
    ax.add_artist(e)
    e.set_clip_box(ax.bbox)
    e.set_alpha(np.random.rand())
    e.set_facecolor(np.random.rand(3))

ax.set_xlim(0, 10)
ax.set_ylim(0, 10)

plt.show()
../../_images/sphx_glr_ellipse_demo_001.png

Ellipse Rotated

Draw many ellipses with different angles.

import matplotlib.pyplot as plt
import numpy as np
from matplotlib.patches import Ellipse

delta = 45.0  # degrees

angles = np.arange(0, 360 + delta, delta)
ells = [Ellipse((1, 1), 4, 2, a) for a in angles]

a = plt.subplot(111, aspect='equal')

for e in ells:
    e.set_clip_box(a.bbox)
    e.set_alpha(0.1)
    a.add_artist(e)

plt.xlim(-2, 4)
plt.ylim(-1, 3)

plt.show()
../../_images/sphx_glr_ellipse_demo_002.png