.. note::
    :class: sphx-glr-download-link-note

    Click :ref:`here <sphx_glr_download_gallery_shapes_and_collections_ellipse_demo.py>` to download the full example code
.. rst-class:: sphx-glr-example-title

.. _sphx_glr_gallery_shapes_and_collections_ellipse_demo.py:


============
Ellipse Demo
============

Draw many ellipses. Here individual ellipses are drawn. Compare this
to the :doc:`Ellipse collection example
</gallery/shapes_and_collections/ellipse_collection>`.



.. code-block:: python

    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()




.. image:: /gallery/shapes_and_collections/images/sphx_glr_ellipse_demo_001.png
    :class: sphx-glr-single-img




===============
Ellipse Rotated
===============

Draw many ellipses with different angles.




.. code-block:: python


    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()




.. image:: /gallery/shapes_and_collections/images/sphx_glr_ellipse_demo_002.png
    :class: sphx-glr-single-img




------------

References
""""""""""

The use of the following functions, methods, classes and modules is shown
in this example:



.. code-block:: python


    import matplotlib
    matplotlib.patches
    matplotlib.patches.Ellipse
    matplotlib.axes.Axes.add_artist
    matplotlib.artist.Artist.set_clip_box
    matplotlib.artist.Artist.set_alpha
    matplotlib.patches.Patch.set_facecolor







.. _sphx_glr_download_gallery_shapes_and_collections_ellipse_demo.py:


.. only :: html

 .. container:: sphx-glr-footer
    :class: sphx-glr-footer-example



  .. container:: sphx-glr-download

     :download:`Download Python source code: ellipse_demo.py <ellipse_demo.py>`



  .. container:: sphx-glr-download

     :download:`Download Jupyter notebook: ellipse_demo.ipynb <ellipse_demo.ipynb>`


.. only:: html

 .. rst-class:: sphx-glr-signature

    Keywords: matplotlib code example, codex, python plot, pyplot
    `Gallery generated by Sphinx-Gallery
    <https://sphinx-gallery.readthedocs.io>`_
