Casa Finanza personale Come creare Advanced Scatterplot in MatPlotLib - dummies

Come creare Advanced Scatterplot in MatPlotLib - dummies

Sommario:

Video: Matplotlib Plot Tutorial: Histograms, Scatter Plots & Legend 2024

Video: Matplotlib Plot Tutorial: Histograms, Scatter Plots & Legend 2024
Anonim

I grafici a dispersione sono particolarmente importanti per la scienza dei dati perché possono mostrare schemi di dati che non sono ovvi se visualizzati in altri modi. Puoi vedere i raggruppamenti di dati con relativa facilità e aiutare lo spettatore a capire quando i dati appartengono a un particolare gruppo. Puoi anche mostrare sovrapposizioni tra gruppi e persino dimostrare quando determinati dati non rientrano nell'intervallo previsto. Mostrare questi diversi tipi di relazioni nei dati è una tecnica avanzata che è necessario conoscere per sfruttare al meglio MatPlotLib.

Raffigurazione dei gruppi

Il colore è il terzo asse quando si lavora con uno scatterplot. L'uso del colore ti consente di evidenziare i gruppi in modo che gli altri possano vederli con maggiore facilità. L'esempio seguente mostra come utilizzare il colore per mostrare i gruppi all'interno di un grafico a dispersione:

importa numpy come np

importa matplotlib. pyplot come plt

x1 = 5 * np. casuale. rand (50)

x2 = 5 * np. casuale. rand (50) + 25

x3 = 30 * np. casuale. rand (25)

x = np. concatenate ((x1, x2, x3))

y1 = 5 * np. casuale. rand (50)

y2 = 5 * np. casuale. rand (50) + 25

y3 = 30 * np. casuale. rand (25)

y = np. concatenate ((y1, y2, y3))

color_array = ['b'] * 50 + ['g'] * 50 + ['r'] * 25

plt. scatter (x, y, s = [50], marker = "D", c = color_array)

plt. show ()

Questo esempio utilizza un array per i colori. Tuttavia, il primo gruppo è blu, seguito dal verde per il secondo gruppo. Tutti i valori anomali appaiono in rosso.

Gli array di colori possono far risaltare meglio i gruppi scatterplot.

Visualizzazione delle correlazioni

In alcuni casi, è necessario conoscere l'orientamento generale dei dati durante la visualizzazione di un grafico a dispersione. Anche se si crea una rappresentazione chiara dei gruppi, la direzione effettiva che i dati assumono nel loro complesso potrebbe non essere chiara. In questo caso, aggiungi una linea di tendenza all'output. Ecco un esempio di aggiunta di una linea di tendenza a un grafico a dispersione che include gruppi.

importa numpy come np

importa matplotlib. pyplot come plt

importa matplotlib. pylab as plb

x1 = 15 * np. casuale. rand (50)

x2 = 15 * np. casuale. rand (50) + 15

x3 = 30 * np. casuale. rand (30)

x = np. concatenate ((x1, x2, x3))

y1 = 15 * np. casuale. rand (50)

y2 = 15 * np. casuale. rand (50) + 15

y3 = 30 * np. casuale. rand (30)

y = np. concatenate ((y1, y2, y3))

color_array = ['b'] * 50 + ['g'] * 50 + ['r'] * 25

plt. scatter (x, y, s = [90], marker = "*", c = color_array)

z = np. polyfit (x, y, 1)

p = np. poly1d (z)

plb. trama (x, p (x), 'm -')

plt.show ()

L'aggiunta di una linea di tendenza significa chiamare la funzione NumPy polyfit () con i dati, che restituisce un vettore di coefficienti, p , che minimizza l'errore dei minimi quadrati. La regressione quadrata minima è un metodo per trovare una linea che riepiloga la relazione tra due variabili, x e y in questo caso, almeno all'interno del dominio della variabile esplicativa x . Il terzo parametro polyfit () esprime il grado di adattamento polinomiale.

L'output vettoriale di polyfit () viene utilizzato come input per poly1d () , che calcola i punti di dati dell'asse y effettivi. La chiamata a plot () crea la linea di tendenza sullo scatterplot.

Le linee di tendenza di Scatterplot possono mostrarti la direzione generale dei dati.

Come creare Advanced Scatterplot in MatPlotLib - dummies

Scelta dell'editore

Come utilizzare le funzionalità dell'app Klout su dispositivi Apple - dummies

Come utilizzare le funzionalità dell'app Klout su dispositivi Apple - dummies

L'esperienza mobile di Klout è più limitato rispetto al sito web completo. Tuttavia, molte funzionalità sono ancora disponibili con l'app per dispositivi mobili, incluso dare + K ai tuoi influenzatori, controllare il tuo punteggio Klout e apportare semplici modifiche al tuo profilo. E con l'implementazione di Klout per il tuo iPhone Passbook puoi persino usare Klout per ottenere ...

Metriche dei social media: App Android SDK di Google Analytics - dummies

Metriche dei social media: App Android SDK di Google Analytics - dummies

Tracciamento delle metriche di un'applicazione ( un'app) è stata semplificata, ma le app sono ancora isolate. Puoi tenere traccia di ogni app, ma le soluzioni sono ancora in fase di creazione per tenere traccia di tutte le app. Per andare avanti con Google Analytics SDK per la tua app Android, segui questi passaggi: Scarica l'SDK di Google Analytics per Android. Aggiungi la libreria libGoogleanalytics. jar ...

Metriche sui social media: individuazione del momento di trazione con Google+ - dummies

Metriche sui social media: individuazione del momento di trazione con Google+ - dummies

In i social media, il momento di trazione potrebbe anche essere chiamato il "miglior tempo per condividere su Google+ o altri siti sociali. "Il momento migliore per te potrebbe non essere il momento migliore per i tuoi colleghi generatori di contenuti. (Il merito di questo suggerimento principale va a Christopher Penn che per primo condivise la sua osservazione sulla ricerca ...

Scelta dell'editore

Combinazione di due foto sulla tua Nikon D3400 con sovrapposizione immagini - manichini

Combinazione di due foto sulla tua Nikon D3400 con sovrapposizione immagini - manichini

L'opzione Sovrapposizione immagini sulla Il menu di ritocco di Nikon D3400 consente di unire due foto in una. Questa opzione è stata utilizzata per combinare una foto di un lupo mannaro, mostrato a sinistra, con una scena da giardino notturno, mostrata nel mezzo. Il risultato è l'immagine spettrale mostrata a destra. Oooh, spaventoso! Su ...

Scelta di una modalità Esposizione per una Nikon DSLR - manichini

Scelta di una modalità Esposizione per una Nikon DSLR - manichini

La prima impostazione da prendere in considerazione quando si le riprese con la tua Nikon D3100, D5100 o D7000 sono la modalità di esposizione, che puoi selezionare tramite la ghiera dei modi. La tua scelta determina la quantità di controllo che hai rispetto a due impostazioni di esposizione critiche - diaframma e tempo di posa - oltre a molte altre opzioni, incluse quelle relative ...

Scelta del formato immagine JPEG per una reflex Nikon - dummies

Scelta del formato immagine JPEG per una reflex Nikon - dummies

Offerte Nikon D3100, D5100 o D7000 i due tipi di file comuni nella maggior parte delle fotocamere digitali odierne: JPEG e Camera Raw, o semplicemente Raw in breve, che passa dallo specifico moniker NEF (Nikon Electronic Format) sulle fotocamere Nikon. Il tipo di file, talvolta noto anche come formato file, determina come i dati dell'immagine ...

Scelta dell'editore

Comprensione della struttura delle classi Java - dummies

Comprensione della struttura delle classi Java - dummies

Impossibile creare un'applicazione Java senza creare una classe. Tuttavia, i modi in cui si usano le classi all'inizio quando si apprendono su di essi sono stati relativamente semplicistici - Java è in grado di avere una complessità considerevolmente maggiore, che è il punto di questo capitolo. Le classi hanno una struttura specifica. Proprio come i progetti ...

Come utilizzare i metodi astratti in Java - dummies

Come utilizzare i metodi astratti in Java - dummies

Sia le interfacce che le classi astratte hanno metodi astratti in Java. Ma i metodi astratti giocano ruoli leggermente diversi in questi due tipi di tipi di riferimento. Come puoi tenere tutto dritto nella tua mente? La prima cosa da fare è ricordare che nessuno impara a conoscere i concetti di programmazione orientata agli oggetti senza ottenere molti ...

Come utilizzare l'interfaccia CharSequence in Java - dummies

Come utilizzare l'interfaccia CharSequence in Java - dummies

L'API Java include un'interfaccia utile chiamata CharSequence. Tutte e tre queste classi - String, StringBuilder e StringBuffer - implementano questa interfaccia. Questo metodo esiste principalmente per consentire di utilizzare String, StringBuilder e StringBuffer in modo intercambiabile. A tal fine, molti dei metodi delle classi String, StringBuilder e StringBuffer utilizzano CharSequence come parametro ...