Datenzeiger mit Matplotlib erstellen

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 werden wir lernen, wie man einen Datenzeiger mit einem Textfeld erstellt, der den Plotpunkt nahe dem Mauszeiger anzeigt, indem wir Matplotlib, eine Plotbibliothek für die Python-Programmiersprache, verwenden.

Tipps für die virtuelle Maschine

Nachdem der Start der virtuellen Maschine abgeschlossen ist, klicken Sie in der oberen linken Ecke, um zur Registerkarte Notebook zu wechseln und Jupyter Notebook für die Übung zu öffnen.

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, und wir werden das Problem für Sie prompt beheben.

Importieren von erforderlichen Bibliotheken

Wir beginnen mit dem Importieren der Matplotlib- und NumPy-Bibliotheken. NumPy ist das grundlegende Paket für wissenschaftliches Rechnen in Python, während Matplotlib eine Plotbibliothek ist, die publikationsreife Grafiken erzeugt.

import matplotlib.pyplot as plt
import numpy as np

Erstellen eines Diagramms

Wir erstellen ein einfaches Diagramm einer Parabel, indem wir die linspace-Funktion von NumPy verwenden, um 1000 Werte zwischen -5 und 5 für x zu generieren, und berechnen dann y als das Quadrat von x.

fig, ax = plt.subplots(figsize=(8, 6))
ax.set_title("Cursor Tracking x Position")

x = np.linspace(-5, 5, 1000)
y = x**2

line, = ax.plot(x, y)
ax.set_xlim(-5, 5)
ax.set_ylim(0, 25)

Erstellen der AnnotatedCursor-Klasse

Wir erstellen eine neue Klasse AnnotatedCursor, die von matplotlib.widgets.Cursor erbt und die Erstellung neuer Widgets und deren Ereignisrufe demonstriert. Die AnnotatedCursor-Klasse wird verwendet, um einen Kreuzhaarschreiber mit einem Text zu erstellen, der die aktuellen Koordinaten anzeigt.

class AnnotatedCursor(Cursor):
    """
    A crosshair cursor like `~matplotlib.widgets.Cursor` with a text showing \
    the current coordinates.
  ...
    """

Initialisieren des AnnotatedCursor-Objekts

Wir initialisieren das AnnotatedCursor-Objekt, indem wir die Plotlinie, line, an den AnnotatedCursor-Konstruktor übergeben.

cursor = AnnotatedCursor(line=line, ax=ax, useblit=True)

Zeige das Diagramm an

Wir zeigen das Diagramm mit der show()-Methode des Matplotlib-pyplot-Moduls an.

plt.show()

Zusammenfassung

In diesem Lab haben wir gelernt, wie man einen Datenzeiger einschließlich eines Textfelds erstellt, das den Plotpunkt in der Nähe des Mauszeigers mit Matplotlib anzeigt. Wir haben ein einfaches Diagramm einer Parabel erstellt, dann ein AnnotatedCursor-Objekt erstellt und das Diagramm angezeigt.