Matplotlib Offset Copy

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 lernen wir, wie wir transforms.offset_copy verwenden, um ein Zeichenelement, wie eine Texteingabe, an einem angegebenen Offset in Bildschirmkoordinaten relativ zu einem Ort in beliebigen Koordinaten zu positionieren. Wir werden die Matplotlib-Bibliothek in Python verwenden, um einen Streudiagramm und einen Polardiagramm zu erstellen und dann mithilfe von offset_copy Text zu jedem Diagramm hinzuzufügen.

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 der 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.

Bibliotheken importieren

Wir beginnen mit dem Import der erforderlichen Bibliotheken: numpy und matplotlib.pyplot.

import numpy as np
import matplotlib.pyplot as plt

Daten erstellen

Als nächstes werden wir einige Daten erstellen, die wir in unseren Diagrammen verwenden. Wir werden numpy verwenden, um zwei Arrays, xs und ys, zu erstellen, die wir als x- und y-Koordinaten für unser Streudiagramm verwenden werden.

xs = np.arange(7)
ys = xs**2

Ein Streudiagramm erstellen

Wir werden nun ein Streudiagramm erstellen, indem wir die plot-Funktion aus matplotlib.pyplot verwenden.

fig = plt.figure(figsize=(5, 10))
ax = plt.subplot(2, 1, 1)

## Plot the data
for x, y in zip(xs, ys):
    plt.plot(x, y, 'ro')

Text zum Streudiagramm hinzufügen

Jetzt werden wir mithilfe von offset_copy Text zu unserem Streudiagramm hinzufügen. Wir werden zunächst einen Transformationsvorgang erstellen, der den Text an einem angegebenen Offset in Bildschirmkoordinaten relativ zu einem in beliebigen Koordinaten angegebenen Ort positioniert. Anschließend werden wir die text-Funktion aus matplotlib.pyplot verwenden, um den Text zum Diagramm hinzuzufügen.

## Create the transform
trans_offset = mtransforms.offset_copy(ax.transData, fig=fig,
                                       x=0.05, y=0.10, units='inches')

## Add text to the plot
for x, y in zip(xs, ys):
    plt.text(x, y, '%d, %d' % (int(x), int(y)), transform=trans_offset)

Ein Polardiagramm erstellen

Wir werden nun ein Polardiagramm erstellen, indem wir die polar-Funktion aus matplotlib.pyplot verwenden.

ax = plt.subplot(2, 1, 2, projection='polar')

## Plot the data
for x, y in zip(xs, ys):
    plt.polar(x, y, 'ro')

Text zum Polardiagramm hinzufügen

Schließlich werden wir mithilfe von offset_copy und der text-Funktion aus matplotlib.pyplot Text zu unserem Polardiagramm hinzufügen.

## Create the transform
trans_offset = mtransforms.offset_copy(ax.transData, fig=fig,
                                       y=6, units='dots')

## Add text to the plot
for x, y in zip(xs, ys):
    plt.text(x, y, '%d, %d' % (int(x), int(y)),
             transform=trans_offset,
             horizontalalignment='center',
             verticalalignment='bottom')

Zusammenfassung

In diesem Lab haben wir gelernt, wie man transforms.offset_copy verwendet, um ein Zeichenelement an einem angegebenen Offset in Bildschirmkoordinaten relativ zu einem in beliebigen Koordinaten angegebenen Ort zu positionieren. Wir haben diese Funktion verwendet, um Text zu einem Streudiagramm und einem Polardiagramm hinzuzufügen, das mit der matplotlib.pyplot-Bibliothek in Python erstellt wurde.