Stelo 3D #

Dimostrazione di un grafico a stelo in 3D, che traccia linee verticali da una linea di base alla coordinata z e posiziona un indicatore sulla punta.

import matplotlib.pyplot as plt
import numpy as np

theta = np.linspace(0, 2*np.pi)
x = np.cos(theta - np.pi/2)
y = np.sin(theta - np.pi/2)
z = theta

fig, ax = plt.subplots(subplot_kw=dict(projection='3d'))
ax.stem(x, y, z)

plt.show()
dimostrazione stem3d

La posizione della linea di base può essere adattata utilizzando bottom . I parametri linefmt , markerfmt e basefmt controllano le proprietà di base del formato del grafico. Tuttavia, contrariamente a plotnon tutte le proprietà sono configurabili tramite argomenti di parole chiave. Per un controllo più avanzato adattare gli oggetti linea restituiti da stem3D.

fig, ax = plt.subplots(subplot_kw=dict(projection='3d'))
markerline, stemlines, baseline = ax.stem(
    x, y, z, linefmt='grey', markerfmt='D', bottom=np.pi)
markerline.set_markerfacecolor('none')

plt.show()
dimostrazione stem3d

L'orientamento dei gambi e della linea di base può essere modificato utilizzando l' orientamento . Ciò determina in quale direzione vengono proiettati gli steli dai punti della testa, verso la linea di base inferiore .

Ad esempio, impostando orientation='x', i gambi vengono proiettati lungo la direzione x e la linea di base è nel piano yz .

fig, ax = plt.subplots(subplot_kw=dict(projection='3d'))
markerline, stemlines, baseline = ax.stem(x, y, z, bottom=-1, orientation='x')
ax.set(xlabel='x', ylabel='y', zlabel='z')

plt.show()
dimostrazione stem3d

Tempo di esecuzione totale dello script: (0 minuti 1,453 secondi)

Galleria generata da Sphinx-Gallery