.. note:: :class: sphx-glr-download-link-note Click :ref:`here ` to download the full example code .. rst-class:: sphx-glr-example-title .. _sphx_glr_gallery_subplots_axes_and_figures_subplots_demo.py: ============= Subplots Demo ============= Examples illustrating the use of plt.subplots(). This function creates a figure and a grid of subplots with a single call, while providing reasonable control over how the individual plots are created. For very refined tuning of subplot creation, you can still use add_subplot() directly on a new figure. .. code-block:: python import matplotlib.pyplot as plt import numpy as np # Simple data to display in various forms x = np.linspace(0, 2 * np.pi, 400) y = np.sin(x ** 2) plt.close('all') Just a figure and one subplot .. code-block:: python f, ax = plt.subplots() ax.plot(x, y) ax.set_title('Simple plot') .. image:: /gallery/subplots_axes_and_figures/images/sphx_glr_subplots_demo_001.png :class: sphx-glr-single-img Two subplots, the axes array is 1-d .. code-block:: python f, axarr = plt.subplots(2, sharex=True) f.suptitle('Sharing X axis') axarr[0].plot(x, y) axarr[1].scatter(x, y) .. image:: /gallery/subplots_axes_and_figures/images/sphx_glr_subplots_demo_002.png :class: sphx-glr-single-img Two subplots, unpack the axes array immediately .. code-block:: python f, (ax1, ax2) = plt.subplots(1, 2, sharey=True) f.suptitle('Sharing Y axis') ax1.plot(x, y) ax2.scatter(x, y) .. image:: /gallery/subplots_axes_and_figures/images/sphx_glr_subplots_demo_003.png :class: sphx-glr-single-img Three subplots sharing both x/y axes .. code-block:: python f, axarr = plt.subplots(3, sharex=True, sharey=True) f.suptitle('Sharing both axes') axarr[0].plot(x, y) axarr[1].scatter(x, y) axarr[2].scatter(x, 2 * y ** 2 - 1, color='r') # Bring subplots close to each other. f.subplots_adjust(hspace=0) # Hide x labels and tick labels for all but bottom plot. for ax in axarr: ax.label_outer() .. image:: /gallery/subplots_axes_and_figures/images/sphx_glr_subplots_demo_004.png :class: sphx-glr-single-img Row and column sharing .. code-block:: python f, ((ax1, ax2), (ax3, ax4)) = plt.subplots(2, 2, sharex='col', sharey='row') f.suptitle('Sharing x per column, y per row') ax1.plot(x, y) ax2.scatter(x, y) ax3.scatter(x, 2 * y ** 2 - 1, color='r') ax4.plot(x, 2 * y ** 2 - 1, color='r') .. image:: /gallery/subplots_axes_and_figures/images/sphx_glr_subplots_demo_005.png :class: sphx-glr-single-img Four axes, returned as a 2-d array .. code-block:: python f, axarr = plt.subplots(2, 2) axarr[0, 0].plot(x, y) axarr[0, 0].set_title('Axis [0,0]') axarr[0, 1].scatter(x, y) axarr[0, 1].set_title('Axis [0,1]') axarr[1, 0].plot(x, y ** 2) axarr[1, 0].set_title('Axis [1,0]') axarr[1, 1].scatter(x, y ** 2) axarr[1, 1].set_title('Axis [1,1]') for ax in axarr.flat: ax.set(xlabel='x-label', ylabel='y-label') # Hide x labels and tick labels for top plots and y ticks for right plots. for ax in axarr.flat: ax.label_outer() .. image:: /gallery/subplots_axes_and_figures/images/sphx_glr_subplots_demo_006.png :class: sphx-glr-single-img Four polar axes .. code-block:: python f, axarr = plt.subplots(2, 2, subplot_kw=dict(projection='polar')) axarr[0, 0].plot(x, y) axarr[0, 0].set_title('Axis [0,0]') axarr[0, 1].scatter(x, y) axarr[0, 1].set_title('Axis [0,1]') axarr[1, 0].plot(x, y ** 2) axarr[1, 0].set_title('Axis [1,0]') axarr[1, 1].scatter(x, y ** 2) axarr[1, 1].set_title('Axis [1,1]') # Fine-tune figure; make subplots farther from each other. f.subplots_adjust(hspace=0.3) plt.show() .. image:: /gallery/subplots_axes_and_figures/images/sphx_glr_subplots_demo_007.png :class: sphx-glr-single-img .. _sphx_glr_download_gallery_subplots_axes_and_figures_subplots_demo.py: .. only :: html .. container:: sphx-glr-footer :class: sphx-glr-footer-example .. container:: sphx-glr-download :download:`Download Python source code: subplots_demo.py ` .. container:: sphx-glr-download :download:`Download Jupyter notebook: subplots_demo.ipynb ` .. only:: html .. rst-class:: sphx-glr-signature Keywords: matplotlib code example, codex, python plot, pyplot `Gallery generated by Sphinx-Gallery `_