Heim  >  Artikel  >  Backend-Entwicklung  >  Enthüllte Tipps: Zeichnen Sie wunderschöne 3D-Diagramme mit Python

Enthüllte Tipps: Zeichnen Sie wunderschöne 3D-Diagramme mit Python

王林
王林Original
2023-09-28 13:01:501146Durchsuche

Enthüllte Tipps: Zeichnen Sie wunderschöne 3D-Diagramme mit Python

Tipps enthüllt: Verwenden Sie Python, um schöne 3D-Diagramme zu zeichnen

Einführung:
Im Bereich der Datenvisualisierung können durch die Erstellung schöner 3D-Diagramme die Eigenschaften und Trends von Daten intuitiver dargestellt werden. Python verfügt als leistungsstarke Programmiersprache über viele Bibliotheken und Tools, die uns dabei helfen können, dieses Ziel zu erreichen. In diesem Artikel werden einige Tipps und spezifische Codebeispiele zum Zeichnen schöner 3D-Diagramme in Python vorgestellt, damit die Leser diese besser verstehen und anwenden können.

1. Vorbereitung:
Bevor wir beginnen, müssen wir mehrere notwendige Python-Bibliotheken installieren, darunter matplotlib, numpy und mpl_toolkits.mplot3d. Sie können es über den folgenden Code installieren:

pip install matplotlib

pip install numpy

pip install mpl_toolkits.mplot3d

2. Zeichnen Sie ein einfaches 3D-Streudiagramm:
Zeichnen wir zunächst ein einfaches 3D-Streudiagramm. Der Code lautet wie folgt:

import matplotlib.pyplot as plt
import numpy as np

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

x = np.random.standard_normal(100)
y = np.random.standard_normal(100)
z = np.random.standard_normal(100)

ax.scatter(x, y, z)

plt.show()

In diesem Beispiel erstellen wir zunächst ein Figure-Objekt und ein Axes3D-Objekt und fügen das Axes3D-Objekt hinzu wird zu Abbildung hinzugefügt. Anschließend generieren wir 100 Zufallszahlen, die der Standardnormalverteilung als X-, Y- und Z-Koordinaten entsprechen, und verwenden die Methode scatter, um ein Streudiagramm im 3D-Koordinatensystem zu zeichnen. Figure对象和一个Axes3D对象,并通过add_subplot方法将Axes3D对象添加到Figure中。然后,我们生成100个服从标准正态分布的随机数作为x、y、z坐标,并使用scatter方法在3D坐标系上绘制散点图。

三、绘制3D曲面图:
接下来,我们尝试绘制一个3D曲面图。代码如下:

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

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

x = np.linspace(-5, 5, 100)
y = np.linspace(-5, 5, 100)

X, Y = np.meshgrid(x, y)
Z = np.sin(np.sqrt(X**2 + Y**2))

ax.plot_surface(X, Y, Z, cmap='viridis')

plt.show()

在这个示例中,我们首先生成了x和y坐标的一维数组,并利用meshgrid方法生成了一个网格,然后根据公式计算了z坐标的值。最后,使用plot_surface方法绘制了3D曲面图。

四、绘制3D柱状图:
除了散点图和曲面图,我们还可以绘制3D柱状图来展示数据的分布情况。代码如下:

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

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

x = np.arange(10)
y = np.arange(10)
X, Y = np.meshgrid(x, y)
Z = np.random.randint(1, 10, (10, 10))

ax.bar3d(X.flatten(), Y.flatten(), np.zeros_like(Z).flatten(), 1, 1, Z.flatten())

plt.show()

在这个示例中,我们首先生成了x和y坐标的一维数组,并利用meshgrid方法生成了一个网格,然后利用random.randint方法生成了一个10x10的随机整数数组作为z坐标的值。最后,使用bar3d

3. Zeichnen Sie ein 3D-Oberflächendiagramm:

Als nächstes versuchen wir, ein 3D-Oberflächendiagramm zu zeichnen. Der Code lautet wie folgt:
rrreee

In diesem Beispiel haben wir zuerst ein eindimensionales Array von x- und y-Koordinaten generiert, die Methode meshgrid verwendet, um ein Gitter zu generieren, und dann den Wert von berechnet die z-Koordinate gemäß der Formel. Abschließend wurde das 3D-Oberflächendiagramm mit der Methode plot_surface gezeichnet. 🎜🎜4. Zeichnen Sie ein 3D-Histogramm: 🎜Zusätzlich zu Streudiagrammen und Oberflächendiagrammen können wir auch 3D-Histogramme zeichnen, um die Verteilung von Daten anzuzeigen. Der Code lautet wie folgt: 🎜rrreee🎜In diesem Beispiel generieren wir zunächst ein eindimensionales Array aus x- und y-Koordinaten und verwenden die Methode meshgrid, um ein Gitter zu generieren, und verwenden dann random.randint-Methode generiert ein 10x10-Array zufälliger Ganzzahlen als Wert der Z-Koordinate. Abschließend wird mit der Methode <code>bar3d ein 3D-Histogramm gezeichnet. 🎜🎜Fazit: 🎜Durch die Weitergabe dieses Artikels haben wir einige Techniken und spezifische Codebeispiele zum Zeichnen schöner 3D-Diagramme in Python kennengelernt, darunter das Zeichnen von Streudiagrammen, Oberflächendiagrammen und Histogrammen. Diese Techniken können uns helfen, die Eigenschaften und Trends von Daten besser darzustellen und die Wirkung der Datenvisualisierung zu verbessern. Es besteht die Hoffnung, dass die Leser diese Fähigkeiten durch Lernen und Üben weiter erlernen und sie flexibel in tatsächlichen Projekten einsetzen können. 🎜

Das obige ist der detaillierte Inhalt vonEnthüllte Tipps: Zeichnen Sie wunderschöne 3D-Diagramme mit Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn