.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "gallery/pyplots/align_ylabels.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. 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_pyplots_align_ylabels.py: ============== Align y-labels ============== Two methods are shown here, one using a short call to `.Figure.align_ylabels` and the second a manual way to align the labels. .. GENERATED FROM PYTHON SOURCE LINES 10-49 .. code-block:: default import numpy as np import matplotlib.pyplot as plt def make_plot(axs): box = dict(facecolor='yellow', pad=5, alpha=0.2) # Fixing random state for reproducibility np.random.seed(19680801) ax1 = axs[0, 0] ax1.plot(2000*np.random.rand(10)) ax1.set_title('ylabels not aligned') ax1.set_ylabel('misaligned 1', bbox=box) ax1.set_ylim(0, 2000) ax3 = axs[1, 0] ax3.set_ylabel('misaligned 2', bbox=box) ax3.plot(np.random.rand(10)) ax2 = axs[0, 1] ax2.set_title('ylabels aligned') ax2.plot(2000*np.random.rand(10)) ax2.set_ylabel('aligned 1', bbox=box) ax2.set_ylim(0, 2000) ax4 = axs[1, 1] ax4.plot(np.random.rand(10)) ax4.set_ylabel('aligned 2', bbox=box) # Plot 1: fig, axs = plt.subplots(2, 2) fig.subplots_adjust(left=0.2, wspace=0.6) make_plot(axs) # just align the last column of axes: fig.align_ylabels(axs[:, 1]) plt.show() .. image:: /gallery/pyplots/images/sphx_glr_align_ylabels_001.png :alt: ylabels not aligned, ylabels aligned :class: sphx-glr-single-img .. GENERATED FROM PYTHON SOURCE LINES 50-59 .. seealso:: `.Figure.align_ylabels` and `.Figure.align_labels` for a direct method of doing the same thing. Also :doc:`/gallery/subplots_axes_and_figures/align_labels_demo` Or we can manually align the axis labels between subplots manually using the `~.Axis.set_label_coords` method of the y-axis object. Note this requires we know a good offset value which is hardcoded. .. GENERATED FROM PYTHON SOURCE LINES 60-73 .. code-block:: default fig, axs = plt.subplots(2, 2) fig.subplots_adjust(left=0.2, wspace=0.6) make_plot(axs) labelx = -0.3 # axes coords for j in range(2): axs[j, 1].yaxis.set_label_coords(labelx, 0.5) plt.show() .. image:: /gallery/pyplots/images/sphx_glr_align_ylabels_002.png :alt: ylabels not aligned, ylabels aligned :class: sphx-glr-single-img .. GENERATED FROM PYTHON SOURCE LINES 74-81 ------------ References """""""""" The use of the following functions, methods, classes and modules is shown in this example: .. GENERATED FROM PYTHON SOURCE LINES 82-91 .. code-block:: default import matplotlib matplotlib.figure.Figure.align_ylabels matplotlib.axis.Axis.set_label_coords matplotlib.axes.Axes.plot matplotlib.pyplot.plot matplotlib.axes.Axes.set_title matplotlib.axes.Axes.set_ylabel matplotlib.axes.Axes.set_ylim .. rst-class:: sphx-glr-script-out Out: .. code-block:: none .. _sphx_glr_download_gallery_pyplots_align_ylabels.py: .. only :: html .. container:: sphx-glr-footer :class: sphx-glr-footer-example .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: align_ylabels.py ` .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: align_ylabels.ipynb ` .. only:: html .. rst-class:: sphx-glr-signature Keywords: matplotlib code example, codex, python plot, pyplot `Gallery generated by Sphinx-Gallery `_