Anpassen der Achsenrichtung in Matplotlib

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

Matplotlib ist eine beliebte Datenvisualisierungsbibliothek in Python. Es bietet eine Vielzahl von Optionen zur Anpassung von Diagrammen und Grafiken. In diesem Lab werden wir untersuchen, wie man die Achsenrichtung in Matplotlib mithilfe des Moduls mpl_toolkits.axisartist einstellt.

VM-Tipps

Nachdem die VM gestartet ist, klicken Sie in der oberen linken Ecke, um zur Registerkarte Notebook zu wechseln und Jupyter Notebook für die Übung zu nutzen.

Manchmal müssen Sie 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 Sie bei der Lernphase Probleme haben, können Sie Labby gerne fragen. Geben Sie nach der Sitzung Feedback ab, und wir werden das Problem für Sie prompt beheben.

Bibliotheken importieren

Bevor wir beginnen, müssen wir die erforderlichen Bibliotheken importieren. In diesem Lab werden wir matplotlib.pyplot und mpl_toolkits.axisartist verwenden.

import matplotlib.pyplot as plt
import mpl_toolkits.axisartist as axisartist

Funktion zum Einrichten der Achsen erstellen

Wir werden eine Funktion namens setup_axes erstellen, um die Achsen für unsere Diagramme einzurichten. Diese Funktion nimmt zwei Parameter entgegen, ein fig-Objekt und ein pos-Objekt. Das fig-Objekt ist das Figurobjekt, auf dem wir plotten werden, und das pos-Objekt ist die Position des Teilplots innerhalb der Figur.

def setup_axes(fig, pos):
    ax = fig.add_subplot(pos, axes_class=axisartist.Axes)

    ax.set_ylim(-0.1, 1.5)
    ax.set_yticks([0, 1])

    ax.axis[:].set_visible(False)

    ax.axis["x"] = ax.new_floating_axis(1, 0.5)
    ax.axis["x"].set_axisline_style("->", size=1.5)

    return ax

Achsenrichtung einrichten

Wir werden nun ein Figurobjekt erstellen und die Achsenrichtung für unsere Diagramme einrichten. Wir werden fünf verschiedene Teilplots erstellen, um verschiedene Achsenrichtungen zu demonstrieren.

plt.rcParams.update({
    "axes.titlesize": "medium",
    "axes.titley": 1.1,
})

fig = plt.figure(figsize=(10, 4))
fig.subplots_adjust(bottom=0.1, top=0.9, left=0.05, right=0.95)

ax1 = setup_axes(fig, 251)
ax1.axis["x"].set_axis_direction("left")

ax2 = setup_axes(fig, 252)
ax2.axis["x"].label.set_text("Label")
ax2.axis["x"].toggle(ticklabels=False)
ax2.axis["x"].set_axislabel_direction("+")
ax2.set_title("label direction=$+$")

ax3 = setup_axes(fig, 253)
ax3.axis["x"].label.set_text("Label")
ax3.axis["x"].toggle(ticklabels=False)
ax3.axis["x"].set_axislabel_direction("-")
ax3.set_title("label direction=$-$")

ax4 = setup_axes(fig, 254)
ax4.axis["x"].set_ticklabel_direction("+")
ax4.set_title("ticklabel direction=$+$")

ax5 = setup_axes(fig, 255)
ax5.axis["x"].set_ticklabel_direction("-")
ax5.set_title("ticklabel direction=$-$")

ax7 = setup_axes(fig, 257)
ax7.axis["x"].label.set_text("rotation=10")
ax7.axis["x"].label.set_rotation(10)
ax7.axis["x"].toggle(ticklabels=False)

ax8 = setup_axes(fig, 258)
ax8.axis["x"].set_axislabel_direction("-")
ax8.axis["x"].label.set_text("rotation=10")
ax8.axis["x"].label.set_rotation(10)
ax8.axis["x"].toggle(ticklabels=False)

plt.show()

Interpretation der Ergebnisse

Der Code wird eine Figur mit fünf Teilplots erzeugen, die verschiedene Achsenrichtungen demonstrieren. Folgt eine Zusammenfassung der Teilplots:

  1. Teilplot 1: Die Achsenrichtung ist auf links gesetzt.
  2. Teilplot 2: Die Achsenbeschriftungsrichtung ist auf positiv gesetzt.
  3. Teilplot 3: Die Achsenbeschriftungsrichtung ist auf negativ gesetzt.
  4. Teilplot 4: Die Tick-Beschriftungsrichtung ist auf positiv gesetzt.
  5. Teilplot 5: Die Tick-Beschriftungsrichtung ist auf negativ gesetzt.

Zusammenfassung

In diesem Lab haben wir gelernt, wie man die Achsenrichtung in Matplotlib mit dem Modul mpl_toolkits.axisartist einstellt. Wir haben eine Funktion erstellt, um die Achsen für unsere Diagramme einzurichten, und verschiedene Achsenrichtungen mit mehreren Teilplots demonstriert. Dies ist ein nützliches Tool zur Anpassung von Diagrammen und Grafiken in Matplotlib.