<spanid="sphx-glr-gallery-api-patch-collection-py"></span><h1>Circles, Wedges and Polygons<aclass="headerlink" href="#circles-wedges-and-polygons" title="Permalink to this headline">¶</a></h1>
<p>This example demonstrates how to use patch collections.</p>
<spanclass="kn">from</span><spanclass="nn">matplotlib.patches</span><spanclass="kn">import</span><ahref="../../api/_as_gen/matplotlib.patches.Circle.html#matplotlib.patches.Circle" title="View documentation for matplotlib.patches.Circle"><spanclass="n">Circle</span></a><spanclass="p">,</span><ahref="../../api/_as_gen/matplotlib.patches.Wedge.html#matplotlib.patches.Wedge" title="View documentation for matplotlib.patches.Wedge"><spanclass="n">Wedge</span></a><spanclass="p">,</span><ahref="../../api/_as_gen/matplotlib.patches.Polygon.html#matplotlib.patches.Polygon" title="View documentation for matplotlib.patches.Polygon"><spanclass="n">Polygon</span></a>
<spanclass="kn">from</span><spanclass="nn">matplotlib.collections</span><spanclass="kn">import</span><ahref="../../api/collections_api.html#matplotlib.collections.PatchCollection" title="View documentation for matplotlib.collections.PatchCollection"><spanclass="n">PatchCollection</span></a>
<spanclass="c1"># Fixing random state for reproducibility</span>
<ahref="https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.seed.html#numpy.random.seed" title="View documentation for numpy.random.seed"><spanclass="n">np</span><spanclass="o">.</span><spanclass="n">random</span><spanclass="o">.</span><spanclass="n">seed</span></a><spanclass="p">(</span><spanclass="mi">19680801</span><spanclass="p">)</span>
<spanclass="n">fig</span><spanclass="p">,</span><spanclass="n">ax</span><spanclass="o">=</span><ahref="../../api/_as_gen/matplotlib.pyplot.subplots.html#matplotlib.pyplot.subplots" title="View documentation for matplotlib.pyplot.subplots"><spanclass="n">plt</span><spanclass="o">.</span><spanclass="n">subplots</span></a><spanclass="p">()</span>
<spanclass="n">resolution</span><spanclass="o">=</span><spanclass="mi">50</span><spanclass="c1"># the number of vertices</span>
<spanclass="n">x</span><spanclass="o">=</span><ahref="https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.rand.html#numpy.random.rand" title="View documentation for numpy.random.rand"><spanclass="n">np</span><spanclass="o">.</span><spanclass="n">random</span><spanclass="o">.</span><spanclass="n">rand</span></a><spanclass="p">(</span><spanclass="n">N</span><spanclass="p">)</span>
<spanclass="n">y</span><spanclass="o">=</span><ahref="https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.rand.html#numpy.random.rand" title="View documentation for numpy.random.rand"><spanclass="n">np</span><spanclass="o">.</span><spanclass="n">random</span><spanclass="o">.</span><spanclass="n">rand</span></a><spanclass="p">(</span><spanclass="n">N</span><spanclass="p">)</span>
<spanclass="n">radii</span><spanclass="o">=</span><spanclass="mf">0.1</span><spanclass="o">*</span><ahref="https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.rand.html#numpy.random.rand" title="View documentation for numpy.random.rand"><spanclass="n">np</span><spanclass="o">.</span><spanclass="n">random</span><spanclass="o">.</span><spanclass="n">rand</span></a><spanclass="p">(</span><spanclass="n">N</span><spanclass="p">)</span>
<spanclass="n">circle</span><spanclass="o">=</span><ahref="../../api/_as_gen/matplotlib.patches.Circle.html#matplotlib.patches.Circle" title="View documentation for matplotlib.patches.Circle"><spanclass="n">Circle</span></a><spanclass="p">((</span><spanclass="n">x1</span><spanclass="p">,</span><spanclass="n">y1</span><spanclass="p">),</span><spanclass="n">r</span><spanclass="p">)</span>
<spanclass="n">x</span><spanclass="o">=</span><ahref="https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.rand.html#numpy.random.rand" title="View documentation for numpy.random.rand"><spanclass="n">np</span><spanclass="o">.</span><spanclass="n">random</span><spanclass="o">.</span><spanclass="n">rand</span></a><spanclass="p">(</span><spanclass="n">N</span><spanclass="p">)</span>
<spanclass="n">y</span><spanclass="o">=</span><ahref="https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.rand.html#numpy.random.rand" title="View documentation for numpy.random.rand"><spanclass="n">np</span><spanclass="o">.</span><spanclass="n">random</span><spanclass="o">.</span><spanclass="n">rand</span></a><spanclass="p">(</span><spanclass="n">N</span><spanclass="p">)</span>
<spanclass="n">radii</span><spanclass="o">=</span><spanclass="mf">0.1</span><spanclass="o">*</span><ahref="https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.rand.html#numpy.random.rand" title="View documentation for numpy.random.rand"><spanclass="n">np</span><spanclass="o">.</span><spanclass="n">random</span><spanclass="o">.</span><spanclass="n">rand</span></a><spanclass="p">(</span><spanclass="n">N</span><spanclass="p">)</span>
<spanclass="n">theta1</span><spanclass="o">=</span><spanclass="mf">360.0</span><spanclass="o">*</span><ahref="https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.rand.html#numpy.random.rand" title="View documentation for numpy.random.rand"><spanclass="n">np</span><spanclass="o">.</span><spanclass="n">random</span><spanclass="o">.</span><spanclass="n">rand</span></a><spanclass="p">(</span><spanclass="n">N</span><spanclass="p">)</span>
<spanclass="n">theta2</span><spanclass="o">=</span><spanclass="mf">360.0</span><spanclass="o">*</span><ahref="https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.rand.html#numpy.random.rand" title="View documentation for numpy.random.rand"><spanclass="n">np</span><spanclass="o">.</span><spanclass="n">random</span><spanclass="o">.</span><spanclass="n">rand</span></a><spanclass="p">(</span><spanclass="n">N</span><spanclass="p">)</span>
<spanclass="n">wedge</span><spanclass="o">=</span><ahref="../../api/_as_gen/matplotlib.patches.Wedge.html#matplotlib.patches.Wedge" title="View documentation for matplotlib.patches.Wedge"><spanclass="n">Wedge</span></a><spanclass="p">((</span><spanclass="n">x1</span><spanclass="p">,</span><spanclass="n">y1</span><spanclass="p">),</span><spanclass="n">r</span><spanclass="p">,</span><spanclass="n">t1</span><spanclass="p">,</span><spanclass="n">t2</span><spanclass="p">)</span>
<ahref="../../api/_as_gen/matplotlib.patches.Wedge.html#matplotlib.patches.Wedge" title="View documentation for matplotlib.patches.Wedge"><spanclass="n">Wedge</span></a><spanclass="p">((</span><spanclass="o">.</span><spanclass="mi">3</span><spanclass="p">,</span><spanclass="o">.</span><spanclass="mi">7</span><spanclass="p">),</span><spanclass="o">.</span><spanclass="mi">1</span><spanclass="p">,</span><spanclass="mi">0</span><spanclass="p">,</span><spanclass="mi">360</span><spanclass="p">),</span><spanclass="c1"># Full circle</span>
<ahref="../../api/_as_gen/matplotlib.patches.Wedge.html#matplotlib.patches.Wedge" title="View documentation for matplotlib.patches.Wedge"><spanclass="n">Wedge</span></a><spanclass="p">((</span><spanclass="o">.</span><spanclass="mi">7</span><spanclass="p">,</span><spanclass="o">.</span><spanclass="mi">8</span><spanclass="p">),</span><spanclass="o">.</span><spanclass="mi">2</span><spanclass="p">,</span><spanclass="mi">0</span><spanclass="p">,</span><spanclass="mi">360</span><spanclass="p">,</span><spanclass="n">width</span><spanclass="o">=</span><spanclass="mf">0.05</span><spanclass="p">),</span><spanclass="c1"># Full ring</span>
<ahref="../../api/_as_gen/matplotlib.patches.Wedge.html#matplotlib.patches.Wedge" title="View documentation for matplotlib.patches.Wedge"><spanclass="n">Wedge</span></a><spanclass="p">((</span><spanclass="o">.</span><spanclass="mi">8</span><spanclass="p">,</span><spanclass="o">.</span><spanclass="mi">3</span><spanclass="p">),</span><spanclass="o">.</span><spanclass="mi">2</span><spanclass="p">,</span><spanclass="mi">0</span><spanclass="p">,</span><spanclass="mi">45</span><spanclass="p">),</span><spanclass="c1"># Full sector</span>
<ahref="../../api/_as_gen/matplotlib.patches.Wedge.html#matplotlib.patches.Wedge" title="View documentation for matplotlib.patches.Wedge"><spanclass="n">Wedge</span></a><spanclass="p">((</span><spanclass="o">.</span><spanclass="mi">8</span><spanclass="p">,</span><spanclass="o">.</span><spanclass="mi">3</span><spanclass="p">),</span><spanclass="o">.</span><spanclass="mi">2</span><spanclass="p">,</span><spanclass="mi">45</span><spanclass="p">,</span><spanclass="mi">90</span><spanclass="p">,</span><spanclass="n">width</span><spanclass="o">=</span><spanclass="mf">0.10</span><spanclass="p">),</span><spanclass="c1"># Ring sector</span>
<spanclass="n">polygon</span><spanclass="o">=</span><ahref="../../api/_as_gen/matplotlib.patches.Polygon.html#matplotlib.patches.Polygon" title="View documentation for matplotlib.patches.Polygon"><spanclass="n">Polygon</span></a><spanclass="p">(</span><ahref="https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.rand.html#numpy.random.rand" title="View documentation for numpy.random.rand"><spanclass="n">np</span><spanclass="o">.</span><spanclass="n">random</span><spanclass="o">.</span><spanclass="n">rand</span></a><spanclass="p">(</span><spanclass="n">N</span><spanclass="p">,</span><spanclass="mi">2</span><spanclass="p">),</span><spanclass="bp">True</span><spanclass="p">)</span>
<spanclass="n">colors</span><spanclass="o">=</span><spanclass="mi">100</span><spanclass="o">*</span><ahref="https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.rand.html#numpy.random.rand" title="View documentation for numpy.random.rand"><spanclass="n">np</span><spanclass="o">.</span><spanclass="n">random</span><spanclass="o">.</span><spanclass="n">rand</span></a><spanclass="p">(</span><spanclass="nb">len</span><spanclass="p">(</span><spanclass="n">patches</span><spanclass="p">))</span>
<spanclass="n">p</span><spanclass="o">=</span><ahref="../../api/collections_api.html#matplotlib.collections.PatchCollection" title="View documentation for matplotlib.collections.PatchCollection"><spanclass="n">PatchCollection</span></a><spanclass="p">(</span><spanclass="n">patches</span><spanclass="p">,</span><spanclass="n">alpha</span><spanclass="o">=</span><spanclass="mf">0.4</span><spanclass="p">)</span>
<spanclass="n">p</span><spanclass="o">.</span><spanclass="n">set_array</span><spanclass="p">(</span><ahref="https://docs.scipy.org/doc/numpy/reference/generated/numpy.array.html#numpy.array" title="View documentation for numpy.array"><spanclass="n">np</span><spanclass="o">.</span><spanclass="n">array</span></a><spanclass="p">(</span><spanclass="n">colors</span><spanclass="p">))</span>
<ahref="../../api/_as_gen/matplotlib.pyplot.show.html#matplotlib.pyplot.show" title="View documentation for matplotlib.pyplot.show"><spanclass="n">plt</span><spanclass="o">.</span><spanclass="n">show</span></a><spanclass="p">()</span>