Matplotlib - Dreidimensionales Zeichnen

Obwohl Matplotlib ursprünglich nur für zweidimensionales Plotten konzipiert wurde, wurden in späteren Versionen einige dreidimensionale Plot-Dienstprogramme auf Matplotlibs zweidimensionaler Anzeige aufgebaut, um eine Reihe von Werkzeugen für die dreidimensionale Datenvisualisierung bereitzustellen. Dreidimensionale Diagramme werden durch Importieren von aktiviertmplot3d toolkit, im Matplotlib-Paket enthalten.

Eine dreidimensionale Achse kann erstellt werden, indem das Schlüsselwort projection = '3d' an eine der normalen Routinen zur Achsenerstellung übergeben wird.

from mpl_toolkits import mplot3d
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
ax = plt.axes(projection='3d')
z = np.linspace(0, 1, 100)
x = z * np.sin(20 * z)
y = z * np.cos(20 * z)
ax.plot3D(x, y, z, 'gray')
ax.set_title('3D line plot')
plt.show()

Wir können jetzt eine Vielzahl von dreidimensionalen Diagrammtypen zeichnen. Die grundlegendste dreidimensionale Darstellung ist a3D line ploterstellt aus Mengen von (x, y, z) Tripeln. Dies kann mit der Funktion ax.plot3D erstellt werden.

3D scatter plot wird mit dem generiert ax.scatter3D Funktion.

from mpl_toolkits import mplot3d
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
ax = plt.axes(projection='3d')
z = np.linspace(0, 1, 100)
x = z * np.sin(20 * z)
y = z * np.cos(20 * z)
c = x + y
ax.scatter(x, y, z, c=c)
ax.set_title('3d Scatter plot')
plt.show()