Y-Beschriftungen in Matplotlib-Diagrammen ausrichten

PythonPythonBeginner
Jetzt üben

This tutorial is from open-source community. Access the source code

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab lernst du, wie du die y-Beschriftungen in Matplotlib-Diagrammen ausrichten kannst. Die Ausrichtung der y-Beschriftungen ist wichtig für die Lesbarkeit von Diagrammen, insbesondere wenn es mehrere Teilbilder gibt.

Tipps für die virtuelle Maschine (VM)

Nachdem der VM-Start abgeschlossen ist, klicke in der oberen linken Ecke, um zur Registerkarte Notebook zu wechseln und Jupyter Notebook für die Übung zu öffnen.

Manchmal musst du einige Sekunden warten, bis Jupyter Notebook vollständig geladen ist. Die Validierung von Vorgängen kann aufgrund von Einschränkungen in Jupyter Notebook nicht automatisiert werden.

Wenn du bei der Lernphase Probleme hast, kannst du Labby gerne fragen. Gib nach der Sitzung Feedback, und wir werden das Problem für dich prompt beheben.

Importiere erforderliche Bibliotheken

Der erste Schritt besteht darin, die erforderlichen Bibliotheken zu importieren. In diesem Lab werden wir Matplotlib und NumPy verwenden.

import matplotlib.pyplot as plt
import numpy as np

Erzeuge das Diagramm

Der nächste Schritt besteht darin, das Diagramm zu erstellen. Wir werden ein Diagramm mit zwei Teilbildern erstellen, bei denen die y-Beschriftungen nicht ausgerichtet sind.

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)

fig, axs = plt.subplots(2, 2)
fig.subplots_adjust(left=0.2, wspace=0.6)
make_plot(axs)
plt.show()

Ausrichte die y-Beschriftungen automatisch

Der dritte Schritt besteht darin, die y-Beschriftungen automatisch mit der Methode .Figure.align_ylabels auszurichten.

fig, axs = plt.subplots(2, 2)
fig.subplots_adjust(left=0.2, wspace=0.6)
make_plot(axs)
fig.align_ylabels(axs[:, 1])
plt.show()

Ausrichte die y-Beschriftungen manuell

Der vierte Schritt besteht darin, die y-Beschriftungen manuell mit der Methode ~.Axis.set_label_coords des y-Achsenobjekts auszurichten.

fig, axs = plt.subplots(2, 2)
fig.subplots_adjust(left=0.2, wspace=0.6)
make_plot(axs)

labex = -0.3  ## Achsenkoordinaten

for j in range(2):
    axs[j, 1].yaxis.set_label_coords(labex, 0.5)

plt.show()

Zusammenfassung

In diesem Lab haben Sie gelernt, wie Sie y-Beschriftungen in Matplotlib-Diagrammen ausrichten. Die Ausrichtung der y-Beschriftungen ist wichtig für die Lesbarkeit von Diagrammen, insbesondere wenn es mehrere Teilbilder gibt. Wir haben zwei Methoden zur Ausrichtung der y-Beschriftungen behandelt, eine mit einem kurzen Aufruf von .Figure.align_ylabels und die zweite eine manuelle Methode, um die Beschriftungen auszurichten.

Fazit

Herzlichen Glückwunsch! Sie haben gelernt, wie Sie y-Beschriftungen in Matplotlib-Diagrammen ausrichten. Halten Sie sich an die Übung und erkunden Sie die Matplotlib-Bibliothek, um Ihre Visualisierungskompetenzen zu verbessern.

Zusammenfassung

Herzlichen Glückwunsch! Sie haben das Lab "Ausrichtung von y-Beschriftungen" abgeschlossen. Sie können in LabEx weitere Labs absolvieren, um Ihre Fähigkeiten zu verbessern.