mpl_toolkits.mplot3d#

Das mplot3d-Toolkit fügt Matplotlib einfache 3D-Plotting-Funktionen (Scatter, Surface, Line, Mesh usw.) hinzu, indem es ein Axes-Objekt bereitstellt, das eine 2D-Projektion einer 3D-Szene erstellen kann. Das resultierende Diagramm hat das gleiche Erscheinungsbild wie normale 2D-Diagramme. Nicht die schnellste oder umfassendste 3D-Bibliothek auf dem Markt, aber sie wird mit Matplotlib geliefert und kann daher für einige Anwendungsfälle eine leichtere Lösung sein.

Weitere Informationen finden Sie im mplot3d-Tutorial .

../../_images/demo_mplot3d.png

Die interaktiven Backends bieten auch die Möglichkeit, die 3D-Szene zu drehen und zu zoomen. Man kann die 3D-Szene drehen, indem man einfach auf die Szene klickt und sie zieht. Das Schwenken erfolgt durch Klicken mit der mittleren Maustaste, und das Zoomen erfolgt durch Klicken mit der rechten Maustaste auf die Szene und Ziehen der Maus nach oben und unten. Im Gegensatz zu 2D-Diagrammen werden die Schwenk- und Zoom-Schaltflächen der Symbolleiste nicht verwendet.

Notiz

pyplotkann nicht zum Hinzufügen von Inhalt zu 3D-Plots verwendet werden, da seine Funktionssignaturen ausschließlich 2D sind und die für 3D erforderlichen zusätzlichen Informationen nicht verarbeiten können. Verwenden Sie stattdessen die explizite API, indem Sie die entsprechenden Methoden für das Axes3DObjekt aufrufen.

axes3d#

Notiz

Das 3D-Plotten in Matplotlib ist noch nicht so ausgereift wie der 2D-Fall. Bitte melden Sie alle Funktionen, die sich nicht wie erwartet verhalten, als Fehler. Außerdem wäre Hilfe und Patches sehr willkommen!

axes3d.Axes3D(fig[, rect, elev, azim, roll, ...])

3D-Achsenobjekt.

axis3d#

Notiz

Siehe mpl_toolkits.mplot3d.axis3d._axinfofür ein Wörterbuch, das Konstanten enthält, die modifiziert werden können, um das Erscheinungsbild von mplot3d-Achsen zu steuern (z. B. Beschriftungsabstand, Schriftfarben und Bedienfeldfarben). In der Vergangenheit litt axis3d unter hartcodierten Konstanten, die Benutzeranpassungen ausschlossen, und dieses Wörterbuch wurde in Version 1.1 als Notlösung implementiert.

axis3d.Axis(Achsen, *[, rotate_label])

Eine Axis-Klasse für die 3D-Diagramme.

art3d#

art3d.Line3D(xs, ys, zs, *args, **kwargs)

3D-Linienobjekt.

art3d.Line3DCollection(Segmente, *[, zorder])

Eine Sammlung von 3D-Linien.

art3d.Patch3D(*args[, zs, zdir])

3D-Patch-Objekt.

art3d.Patch3DCollection(*args[, zs, zdir, ...])

Eine Sammlung von 3D-Patches.

art3d.Path3DCollection(*args[, zs, zdir, ...])

Eine Sammlung von 3D-Pfade.

art3d.PathPatch3D(Pfad, *[, zs, zdir])

3D-PathPatch-Objekt.

art3d.Poly3DCollection(verts, *args[, zsort])

Eine Sammlung von 3D-Polygonen.

art3d.Text3D([x, y, z, text, zdir])

Textobjekt mit 3D-Position und Richtung.

art3d.get_dir_vector(zdir)

Gibt einen Richtungsvektor zurück.

art3d.juggle_axes(xs, ys, zs, zdir)

Ordnen Sie die Koordinaten neu an, sodass 2D xs, ys in der Ebene orthogonal zu zdir dargestellt werden können.

art3d.line_2d_to_3d(Zeile[, zs, zdir])

Konvertieren Sie eine 2D-Linie in 3D.

art3d.line_collection_2d_to_3d(Spalte [, zs, zdir])

Konvertieren Sie eine LineCollection in ein Line3DCollection-Objekt.

art3d.patch_2d_to_3d(patch[, z, zdir])

Konvertieren Sie einen Patch in ein Patch3D-Objekt.

art3d.patch_collection_2d_to_3d(Spalte [, zs, ...])

Konvertieren Sie a PatchCollectionin ein Patch3DCollectionObjekt (oder a PathCollectionin ein Path3DCollectionObjekt).

art3d.pathpatch_2d_to_3d(Pfadpatch[, z, zdir])

Konvertieren Sie ein PathPatch in ein PathPatch3D-Objekt.

art3d.poly_collection_2d_to_3d(Spalte [, zs, zdir])

Konvertieren Sie eine PolyCollection in ein Poly3DCollection-Objekt.

art3d.rotate_axes(xs, ys, zs, zdir)

Ordnen Sie die Koordinaten neu an, sodass die Achsen mit zdir entlang der ursprünglichen z-Achse gedreht werden.

art3d.text_2d_to_3d(obj[, z, zdir])

Konvertieren Sie einen Text in ein Text3D-Objekt.

proj3d#

proj3d.inv_transform(xs,ys,zs,M)

proj3d.persp_transformation(zvorne, zhinten, ...)

proj3d.proj_points(Punkte, M)

proj3d.proj_trans_points(Punkte, M)

proj3d.proj_transform(xs,ys,zs,M)

Transformieren Sie die Punkte durch die Projektionsmatrix

proj3d.proj_transform_clip(xs,ys,zs,M)

Transformieren Sie die Punkte durch die Projektionsmatrix und geben Sie das Clipping-Ergebnis zurück, das txs, tys, tzs, tis zurückgibt

proj3d.rot_x(V, Alpha)

proj3d.transform(xs,ys,zs,M)

Transformieren Sie die Punkte durch die Projektionsmatrix

proj3d.view_transformation(E, R, V, Rolle)

proj3d.world_transformation(xmin, xmax, ...)

Erzeugt eine Matrix, die homogene Koordinaten in den angegebenen Bereichen auf [0, 1] oder [0, pb_aspect[i]] skaliert, wenn das Plotbox-Seitenverhältnis angegeben ist.