Grafici di superficie 3D
Disegna superfici e griglie 3D con projection="3d", plot_surface e view_init.
Introduzione
Alcuni dati dipendono da due ingressi, come un'altezza che dipende da x e y. Un Axes 3D, creato con projection="3d", può disegnarli come una superficie. view_init ruota la telecamera per guardarla dall'angolo migliore.
np.meshgrid trasforma i due intervalli 1D nelle griglie 2D X e Y, così Z si calcola per ogni coppia (x, y) in un colpo. plot_surface colora la superficie con una mappa di colore; plot_wireframe disegnerebbe solo la griglia. view_init(elev, azim) posiziona la telecamera: elev è l'angolo in altezza e azim ruota attorno all'asse verticale.
Visualizzatore interattivo
Ruota la telecamera con elev e azim, passa da superficie a griglia (wireframe) e prova altre funzioni.
Esempio Matplotlib eseguibile
Matplotlib
main.py
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-3, 3, 40)
y = np.linspace(-3, 3, 40)
X, Y = np.meshgrid(x, y)
Z = np.sin(np.sqrt(X ** 2 + Y ** 2))
fig = plt.figure(figsize=(7, 5))
ax = fig.add_subplot(projection="3d")
ax.plot_surface(X, Y, Z, cmap="viridis")
ax.view_init(elev=30, azim=45)
ax.set_title("z = sin(sqrt(x² + y²))")
plt.show()
