Trama 3D di Seaborn

Trama 3D di Seaborn

Possiamo tracciare diversi modelli di grafici 3D con la configurazione delle coordinate tridimensionali. Una delle caratteristiche che ci incentiva dal vedere i grafici in modo dinamico è il grafico 3D; Ne abbiamo bisogno quando si utilizza la grafica immersiva. Possiamo importare le librerie necessarie, che includono alcune funzioni per la creazione dei grafici tridimensionali. Poiché non esiste una funzionalità integrata nel modulo Seaborn per disegnare i grafici 3D, è il plugin Matplotlib che dipende da fare per fare il lavoro effettivo nei grafici tridimensionali. Pertanto, possiamo usare Seaborn per personalizzare la grafica 3D. Esploreremo come disegnare numerosi diversi grafici tridimensionali in questo tutorial.

Esempio 1

Un gruppo di grafici a dispersione formati usando le combinazioni di triple è il grafico 3D più elementare. La funzione Plot3d () e il metodo Scatter3d (), come i grafici 2D più frequenti, vengono utilizzati per disegnarli. In questo caso, disegneremo un'elica iperbolica, con vari punti vicini alla linea.

Importa Numpy come NP
Importa matplotlib.Pyplot come Plt
Importa Seaborn come SNS
FIG = PLT.figura()
ax = plt.assi (proiezione = '3d')
zline = np.Linspace (0, 20, 2000)
xline = np.Sin (Zline)
yline = np.cos (zline)
ascia.Plot3D (Xline, Yline, Zline, 'Gray')
zData = 15 * np.casuale.casuale (200)
xdata = np.sin (zData) + 0.1 * np.casuale.Randn (200)
ydata = np.cos (zData) + 0.1 * np.casuale.Randn (200)
ascia.dispersione (xdata, ydata, zData, c = zData, cmap = 'blues');
Plt.spettacolo()

Qui, importiamo i file di intestazione richiesti. Il modulo numpy viene introdotto come NP, matplotlib.Pyplot viene introdotto come PLT e Seaborn viene introdotto come SNS. Nel passaggio successivo, chiamiamo la funzione figura () per disegnare la figura. Questa funzione appartiene a matplotlib.Biblioteca Pyplot. Ora, utilizziamo la funzione Axes () per specificare il valore della proiezione.

Qui, vogliamo creare una trama tridimensionale, quindi abbiamo dato un valore 3D. Definiamo i dati per una linea 3D. Dichiariamo le tre diverse variabili e le assegniamo ai valori per tutti e tre. Innanzitutto, impostiamo i valori per la spaziatura per l'asse z, quindi applichiamo la funzione Lincepace () del pacchetto numpy. Con l'aiuto del valore della spaziatura dell'asse z, indichiamo i valori di spaziatura per altri assi, xey.

Ora, per disegnare una trama 3D, impieghiamo la funzione Plot3d (). Qui, forniamo la spaziatura di tutti gli assi e il colore dello sfondo del diagramma 3D come argomento della funzione. Inoltre, impostiamo i dati per i punti di dispersione 3D. Chiamiamo separatamente la funzione Randn () della libreria numpy per tutti i tre assi. In questo modo, otteniamo i punti da cui disegniamo il grafico a dispersione.

Per disegnare il diagramma a dispersione usando questi punti, utilizziamo il metodo Scatter3d (). Questa funzione contiene diversi parametri che includono i dati di X, Y e Asse Z, nonché il valore di "CMAP". Il valore del parametro "CMAP" mostra il colore della linea disegnata nel diagramma 3D. Il metodo show () è chiamato per illustrare la mappa.

Esempio 2

Tutti i dati richiesti per il metodo Contour3d () devono essere nella condizione di un nodi a griglia 2D, nonché i dati Z analizzati in ogni punto. Un grafico di contorno 3D di una funzione periodica è mostrato nella seguente illustrazione:

Importa Numpy come NP
Importa matplotlib.Pyplot come Plt
Importa Seaborn come SNS
def f (x, y):
restituire np.peccato (NP.sqrt (x ** 4 + y ** 4))
x = np.Linspace (-4, 4, 25)
y = np.Linspace (-4, 4, 25)
X, y = np.meshgrid (x, y)
Z = f (x, y)
FIG = PLT.figura()
ax = plt.assi (proiezione = '3d')
ascia.Contour3D (x, y, z, 40, cmap = 'binary')
ascia.set_xlabel ('x')
ascia.set_ylabel ('y')
ascia.set_zlabel ('z')
Plt.spettacolo()

All'inizio del programma, incorporiamo le biblioteche Numpy come NP, Matplotlib.Pyplot come PLT e Seaborn come SNS. Ora, definiamo una funzione f () con due parametri che restituiscono il valore utilizzando il metodo sqrt () della libreria numpy. Indichiamo i valori di spaziatura per entrambi gli assi X e Y con l'aiuto di Linspace ().Questo metodo è correlato al framework numpy.

Nella riga successiva, abbiamo applicato la funzione meshgrid () per creare una griglia a mesh nel grafico 3D. Questa funzione contiene il valore della spaziatura della linea degli assi X e Y come parametri. Qui, utilizziamo la funzione figure () di matplotlib.Libreria Pyplot per creare la figura. Per definire il livello di proiezione, utilizziamo il metodo Axes (). Dobbiamo costruire una mappa tridimensionale, quindi forniamo un valore 3D alla funzione. Ora applichiamo il metodo conurour3d ().

Come parametro della funzione, gli diamo la spaziatura di tutti gli assi e l'ombra del grafico 3D. Successivamente, specifichiamo le didascalie di tutti e tre gli assi, quindi il metodo set_label () è chiamato rispettivamente per tutti gli assi. Per dimostrare il grafico, viene utilizzata la funzione show ().

Esempio 3

In questo caso, creiamo un diagramma di superficie nel grafico tridimensionale usando il metodo Plot_Surface ().

Importa Seaborn come SB
Importa matplotlib.Pyplot come trama
Importa Numpy come NP
def func_z (x, y):
return50 - (x ** 2 + y ** 2)
sb.set_style ('whitegrid')
N = 50
X_val = np.Linspace (-5, 5, n)
Y_val = np.Linspace (-5, 5, n)
X1, y1 = np.meshgrid (x_val, y_val)
Z1 = func_z (x1, y1)
assi = trama.assi (proiezione = '3d')
asce.Plot_surface (x1, y1, z1)
complotto.spettacolo()

Prima di tutto, integriamo i moduli Seaborn, Matplotlib.Pyplot e NP. Definiamo la funzione per l'asse z e questa funzione è fornita con l'asse x e y. Questa funzione restituisce il valore dell'asse z. Nella fase successiva, utilizziamo il metodo set_style () per personalizzare il layout della trama. Abbiamo impostato il suo valore su Whitegrid.

Ora, dichiariamo una variabile e le assegniamo un valore. Il metodo LinSpace () è chiamato per indicare la spaziatura dell'asse x e y. Disegniamo la meshgrid sull'asse z, quindi utilizziamo il metodo meshgrid (). Questa funzione è presa dal pacchetto numpy. Chiamiamo la funzione per i valori dell'asse z. Per il diagramma 3D, è obbligatorio specificare il valore di proiezione. Per questo, impieghiamo la funzione Axes ().

Per disegnare il grafico di superficie, viene eseguita la funzione Plot_surface (). Questa funzione contiene il valore di tutti e tre gli assi. Prima di terminare il codice, utilizziamo il metodo show () per rappresentare il diagramma finalizzato.

Esempio 4

Qui, utilizziamo il metodo WireFrame () per disegnare il wireframe nel diagramma 3D.

Importa Numpy come NP
Importa matplotlib.Pyplot come Plt
Importa Seaborn come SNS
FIG = PLT.figura()
ax = plt.assi (proiezione = '3d')
zline = np.Linspace (0, 20, 2000)
xline = np.Sin (Zline)
yline = np.cos (zline)
ascia.Plot3D (Xline, Yline, Zline, 'Gray')
zData = 15 * np.casuale.casuale (200)
xdata = np.sin (zData) + 0.1 * np.casuale.Randn (200)
ydata = np.cos (zData) + 0.1 * np.casuale.Randn (200)
ascia.Scatter3d (xdata, ydata, zData, c = zData, cmap = 'blues')
Plt.spettacolo()

Dopo aver introdotto i quadri essenziali, identifichiamo la funzione dell'asse z disponibile con gli assi X e Y. Il valore dell'asse z è ottenuto da questo processo. Utilizziamo la funzione set style () per modificare il design del grafico nel passaggio successivo. Il suo valore è configurato per il Whitegrid. Ora inizializziamo una variabile N e gli diamo un valore.

Per specificare la spaziatura tra gli assi X e Y, viene applicata la tecnica Linspace (). Usiamo la funzione meshgrid () perché vogliamo rappresentare la meshgrid all'asse z. Questa è una tecnica del toolkit numpy. Viene considerato il componente per il valore dell'asse z. Il valore di proiezione deve essere indicato per la visualizzazione 3D. Usiamo il metodo Axes () per questo. Il metodo Wireframe () viene applicato per creare il grafico wireframe. Il valore di tutti e tre gli assi è incorporato in questo metodo. Utilizziamo la funzione show () per visualizzare l'intero grafico alla fine.

Conclusione

In questa sezione, siamo andati fino in fondo attraverso diversi approcci utilizzati per creare un diagramma 3D con il Framework Seaborn. Abbiamo anche imparato come disegnare le mappe di contorno 3D, come disegnare il wireframe sul grafico tridimensionale e come creare un grafico di superficie sui grafici 3D. Non esiste una caratteristica tridimensionale integrata nel quadro Seaborn.