Textannotationen in 3D

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 wird gezeigt, wie man Textannotationen auf einem 3D-Diagramm mit der Matplotlib-Bibliothek in Python plaziert. Folgende Funktionalitäten werden behandelt:

  • Verwenden der ~.Axes3D.text-Funktion mit drei Arten von zdir-Werten: None, einem Achsennamen (z.B. 'x') oder einem Richtungs-Tupel (z.B. (1, 1, 0)).
  • Verwenden der ~.Axes3D.text-Funktion mit dem color-Schlüsselwort.
  • Verwenden der .text2D-Funktion, um Text an einer festen Position auf dem ax-Objekt zu platzieren.

Tipps für die VM

Nachdem der VM-Start 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.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/ControlFlowGroup(["Control Flow"]) python(("Python")) -.-> python/DataStructuresGroup(["Data Structures"]) python(("Python")) -.-> python/FunctionsGroup(["Functions"]) python(("Python")) -.-> python/ModulesandPackagesGroup(["Modules and Packages"]) python(("Python")) -.-> python/DataScienceandMachineLearningGroup(["Data Science and Machine Learning"]) matplotlib(("Matplotlib")) -.-> matplotlib/BasicConceptsGroup(["Basic Concepts"]) matplotlib/BasicConceptsGroup -.-> matplotlib/importing_matplotlib("Importing Matplotlib") matplotlib/BasicConceptsGroup -.-> matplotlib/figures_axes("Understanding Figures and Axes") python/ControlFlowGroup -.-> python/for_loops("For Loops") python/DataStructuresGroup -.-> python/tuples("Tuples") python/FunctionsGroup -.-> python/build_in_functions("Build-in Functions") python/ModulesandPackagesGroup -.-> python/importing_modules("Importing Modules") python/DataScienceandMachineLearningGroup -.-> python/data_visualization("Data Visualization") subgraph Lab Skills matplotlib/importing_matplotlib -.-> lab-48985{{"Textannotationen in 3D"}} matplotlib/figures_axes -.-> lab-48985{{"Textannotationen in 3D"}} python/for_loops -.-> lab-48985{{"Textannotationen in 3D"}} python/tuples -.-> lab-48985{{"Textannotationen in 3D"}} python/build_in_functions -.-> lab-48985{{"Textannotationen in 3D"}} python/importing_modules -.-> lab-48985{{"Textannotationen in 3D"}} python/data_visualization -.-> lab-48985{{"Textannotationen in 3D"}} end

Bibliotheken importieren

Importieren Sie die erforderlichen Bibliotheken, um ein 3D-Diagramm zu erstellen und Textannotationen hinzuzufügen.

import matplotlib.pyplot as plt

Erstellen eines 3D-Diagramms

Erstellen Sie ein 3D-Diagramm mit der add_subplot-Methode.

ax = plt.figure().add_subplot(projection='3d')

Verwenden der ~.Axes3D.text-Funktion mit zdir-Werten

Verwenden Sie die ~.Axes3D.text-Funktion, um Textannotationen mit unterschiedlichen zdir-Werten zu platzieren.

zdirs = (None, 'x', 'y', 'z', (1, 1, 0), (1, 1, 1))
xs = (1, 4, 4, 9, 4, 1)
ys = (2, 5, 8, 10, 1, 2)
zs = (10, 3, 8, 9, 1, 8)

for zdir, x, y, z in zip(zdirs, xs, ys, zs):
    label = '(%d, %d, %d), dir=%s' % (x, y, z, zdir)
    ax.text(x, y, z, label, zdir)

Verwenden der ~.Axes3D.text-Funktion mit dem color-Schlüsselwort

Verwenden Sie die ~.Axes3D.text-Funktion mit dem color-Schlüsselwort, um die Farbe der Textannotation zu ändern.

ax.text(9, 0, 0, "red", color='red')

Verwenden der .text2D-Funktion

Verwenden Sie die .text2D-Funktion, um Textannotationen an einer festen Position auf dem ax-Objekt zu platzieren.

ax.text2D(0.05, 0.95, "2D Text", transform=ax.transAxes)

Anpassen der Anzeigebereiche und der Beschriftungen

Anpassen Sie die Anzeigebereiche und die Beschriftungen des 3D-Diagramms.

ax.set_xlim(0, 10)
ax.set_ylim(0, 10)
ax.set_zlim(0, 10)
ax.set_xlabel('X axis')
ax.set_ylabel('Y axis')
ax.set_zlabel('Z axis')

Zeigen Sie das Diagramm an

Zeigen Sie das 3D-Diagramm mit Textannotationen an.

plt.show()

Zusammenfassung

In diesem Lab wurde gezeigt, wie man in Python mit der Matplotlib-Bibliothek Textannotationen auf einem 3D-Diagramm platzieren kann. Die ~.Axes3D.text-Funktion mit unterschiedlichen zdir-Werten und dem color-Schlüsselwort sowie die .text2D-Funktion wurden verwendet, um Textannotationen im 3D-Diagramm zu platzieren. Der Anzeigebereich und die Beschriftungen des 3D-Diagramms wurden ebenfalls angepasst.