


Hier sind einige fragenbasierte Titel, die zum Artikelinhalt passen: * Wie kann ich mit der Funktion „plot_surface' von Matplotlib eine Oberfläche aus einer Sammlung von 3D-Punkten plotten? * Flächen in Matplo zeichnen
Oct 26, 2024 pm 06:33 PMPlotten von Oberflächen in Matplotlib
Beim Arbeiten mit einer Sammlung von 3D-Punkten, die als 3-Tupel dargestellt werden, ist nicht sofort klar, ob die Funktion plot_surface die ideale Option dafür ist Oberflächenplotierung. Lassen Sie uns in die Nuancen eintauchen und herausfinden, wie Sie die Daten für diese Funktion vorbereiten.
plot_surface verstehen
plot_surface erfordert, dass X, Y und Z 2D-Arrays sind. Im Gegensatz zu einem Oberflächendiagramm einer Funktion f(x, y) -> z, wo Sie eine Gitterdomäne bereitstellen können, stellt eine Punktwolke eine Herausforderung dar, da sie eine Triangulation erfordert.
Datenkonvertierung
Da Ihre Daten eine Liste von 3D-Punkten sind, müssen Sie dies tun Konvertieren Sie es in ein Format, das plot_surface verstehen kann. Ein Ansatz besteht darin, Meshgrid zum Erstellen einer Rasterdomäne zu verwenden, wie im folgenden Codeausschnitt gezeigt:
<code class="python">import numpy as np data = [(x1,y1,z1),(x2,y2,z2),.....,(xn,yn,zn)] x, y = zip(*data) # Extract x and y coordinates from the tuples X, Y = np.meshgrid(x, y) # Create a grid domain for X and Y # Convert the z coordinates into a 2D array zs = np.array([z for x, y, z in data]).reshape(X.shape)</code>
Jetzt haben Sie X, Y und Z im erforderlichen 2D-Array-Format.
Oberflächenplotierung
Sobald die Daten bereit sind, können Sie mit dem Plotten der Oberfläche mit plot_surface fortfahren:
<code class="python">from mpl_toolkits.mplot3d import Axes3D # Enable 3D plotting import matplotlib.pyplot as plt fig = plt.figure() ax = fig.add_subplot(111, projection='3d') # Create a 3D subplot ax.plot_surface(X, Y, Z)</code>
Dies sollte eine glatte Oberfläche erzeugen, die durch die angegebenen Punkte verläuft.
Das obige ist der detaillierte Inhalt vonHier sind einige fragenbasierte Titel, die zum Artikelinhalt passen: * Wie kann ich mit der Funktion „plot_surface' von Matplotlib eine Oberfläche aus einer Sammlung von 3D-Punkten plotten? * Flächen in Matplo zeichnen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heißer Artikel

Hot-Tools-Tags

Heißer Artikel

Heiße Artikel -Tags

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Wie benutze ich eine schöne Suppe, um HTML zu analysieren?

So verwenden Sie Python, um die ZiPF -Verteilung einer Textdatei zu finden

Wie man mit PDF -Dokumenten mit Python arbeitet

Wie kann man mit Redis in Django -Anwendungen zwischenstrichen

Wie führe ich ein tiefes Lernen mit Tensorflow oder Pytorch durch?

Serialisierung und Deserialisierung von Python -Objekten: Teil 1

So implementieren Sie Ihre eigene Datenstruktur in Python
