3D-Plots als Teilbilder

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

Beim Datenanalyse ist es oft erforderlich, 3D-Diagramme zu erstellen, um Daten zu visualisieren. Mit Matplotlib können wir 3D-Diagramme als Teilbilder erstellen, um verschiedene 3D-Daten zu vergleichen. In diesem Lab wird gezeigt, wie man mit Matplotlib 3D-Diagramme als Teilbilder erstellt.

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

Bibliotheken importieren

Bevor wir beginnen, müssen wir die Bibliotheken importieren, die wir in diesem Lab verwenden werden. Wir werden Matplotlib, NumPy und Axes3D aus mpl_toolkits.mplot3d verwenden.

import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D

Erstellen der Figur und der Teilbilder

Wir werden eine Figur mit zwei Teilbildern erstellen. Das erste Teilbild wird ein 3D-Flächenplot sein, und das zweite Teilbild wird ein 3D-Gitterplot sein.

## Create a figure with two subplots
fig = plt.figure(figsize=plt.figaspect(0.5))

## Add the first subplot with 3D projection
ax1 = fig.add_subplot(1, 2, 1, projection='3d')

## Add the second subplot with 3D projection
ax2 = fig.add_subplot(1, 2, 2, projection='3d')

Erstellen des 3D-Flächenplots

Wir werden für das erste Teilbild einen 3D-Flächenplot erstellen. Wir werden NumPy verwenden, um die Daten für den Plot zu erstellen.

## Create data for the 3D surface plot
X = np.arange(-5, 5, 0.25)
Y = np.arange(-5, 5, 0.25)
X, Y = np.meshgrid(X, Y)
R = np.sqrt(X**2 + Y**2)
Z = np.sin(R)

## Plot the 3D surface plot
surf = ax1.plot_surface(X, Y, Z, cmap='coolwarm', linewidth=0, antialiased=False)

## Add a color bar to the plot
fig.colorbar(surf, shrink=0.5, aspect=10)

## Set the limits for the z-axis
ax1.set_zlim(-1.01, 1.01)

Erstellen des 3D-Gitterplots

Wir werden für das zweite Teilbild einen 3D-Gitterplot erstellen. Wir werden die Funktion get_test_data aus mpl_toolkits.mplot3d.axes3d verwenden, um die Daten für den Plot zu erstellen.

## Create data for the 3D wireframe plot
X, Y, Z = Axes3D.get_test_data(0.05)

## Plot the 3D wireframe plot
ax2.plot_wireframe(X, Y, Z, rstride=10, cstride=10)

Zeige den Plot an

Wir werden die Funktion plt.show() verwenden, um den Plot anzuzeigen.

plt.show()

Zusammenfassung

In diesem Lab haben wir gelernt, wie man mit Matplotlib 3D-Plots als Teilbilder erstellt. Wir haben eine Figur mit zwei Teilbildern erstellt, einen 3D-Flächenplot und einen 3D-Gitterplot. Wir haben NumPy verwendet, um die Daten für den 3D-Flächenplot zu erstellen, und die Funktion get_test_data aus mpl_toolkits.mplot3d.axes3d, um die Daten für den 3D-Gitterplot zu erstellen. Wir haben auch eine Farbskala zum 3D-Flächenplot hinzugefügt und die Grenzen der z-Achse gesetzt.