Matplotlib annotato

Matplotlib annotato
La libreria Matplotlib è una libreria grafica Python con un'estensione numpy. Useremo questo modulo per creare varie visualizzazioni per supportare i nostri programmi. È molto utile quando si tratta di generare programmi di scienze dei dati. Annotare è una frase che si riferisce all'atto di etichettare le cose. Di conseguenza, il metodo ci aiuta a identificare i grafici creati usando matplotlib.

La funzione Testo () potrebbe essere utilizzata per inserire il testo in qualsiasi regione solo sugli assi. Annotare una tecnica grafica è uno scenario tipicamente usato per una frase e la funzione annotato () fornisce funzionalità aggiuntive che creano annotazioni semplici.

Ci sono due fattori da prendere in considerazione in un'annotazione: il luogo da valutare, che è indicato dalla variabile XY, e la posizione del "XYText" testuale.

Abbiamo consegnato il concetto associato a matplotlib annotato. Ora esploreremo come funziona questo metodo e come può realizzare il nostro risultato desiderato in questa porzione. Inizieremo con una semplice illustrazione e arriveremo a quelli più complessi.

Forma d'onda sinusoidale

Il nostro scopo è produrre la forma d'onda sinusoidale in questo caso. Esistono vari parametri collegati alla funzione annotato (), incluso il testo: il testo che intendiamo annotare è indicato da questo argomento. XY: questo argomento contiene i punti annotati X e Y. XYText: è un ulteriore argomento che specifica dove il titolo dovrebbe essere allineato sugli assi X e Y. XYCOORDS: i dati di stringa sono considerati in questo argomento. ArrowProps: questo argomento ha la forma "dict" ed è anche un valore complementare. Non è configurato per nessuno per impostazione predefinita.

Importa matplotlib.Pyplot come Plt
importa numpy come pp
Fig, ppool = plt.sottotrame ()
t = pp.Arange (0.0, 3.0, 0.002)
S = pp.peccato (3 * pp.fossa)
riga = ppool.trama (t, s, lw = 3)
ppool.Annota ("Valore di picco", xy = (.75, 1.2),
XyText = (1, 1), ArrowProps = dict (faceColor = 'Red',
Shrink = 2.20), xycoords = "dati",)
ppool.set_ylim (-2.5, 2.5)
Plt.spettacolo()

Per prima cosa abbiamo dovuto integrare le librerie Numpy e Matplotlib. Ora utilizziamo il metodo di organizzazione di Numpy per ordinare i dati. Quindi, il metodo crea efficacemente una valutazione che rientra nell'intervallo fornito.

Quindi dopo, abbiamo applicato la formula 2*pi*t. Nel frattempo, passeremo alla nostra sezione di annotazione. Il luogo che la freccia richiede di indicare è XY in questo caso. Riceviamo anche attributi freccia, che includono tutte le informazioni su come dovrebbe apparire la punta della freccia. Inoltre, abbiamo impostato l'asse y. Abbiamo finalmente capito tutto.

Segnale coseno al convertitore a onda piena

Il nostro obiettivo in questo caso è visualizzare il risultato di un convertitore a onda piena per il ricevitore del coseno. Il rapporto picco-picco è -0.9 a 0.9 In questa situazione. Il segnale coseno specificato ha una larghezza di banda di 6 Hz. A parte gli articoli di cui sopra, abbiamo incluso un tag PLT qui. Ciò che realizza è che ci consente di identificare anche i quattro assi qui.

Importa matplotlib.Pyplot come Plt
importa numpy come pp
Fig, ppool = plt.sottotrame ()
t = pp.Arange (0.0, 1.5, 0.002)
S = pp.cos (4 * pp.pi * 6 * t)
riga = ppool.trama (t, s, lw = 4)
ppool.Annota ('Values ​​Values', XY = (2, 2),
XyText = (1, 1), ArrowProps = dict (faceColor = 'Red',
Shrink = 0.2), xycoords = "dati",)
Plt.XLabel ("Time in sec")
Plt.ylabel ("tensione")
ppool.set_ylim (-0.9, 0.9)
Plt.spettacolo()

Dai un'occhiata all'output nello screenshot apposto.

Annotare il grafico a dispersione

Consideriamo l'esempio di come possiamo utilizzare questo approccio per annotare un grafico a dispersione.

Importa matplotlib.Pyplot come Plt
y = [3.1, 3.4, 3.6, 3.8, 3.301]
x = [0.05, 0.2, 0.5, 0.43, 0.69]
n = [295, 123, 246, 165, 483]
Fig, ax = PLT.sottotrame ()
ascia.dispersione (x, y)
Per i, txt in enumerate (n):
ascia.annotare (txt, (x [i], y [i])
Plt.spettacolo()

Per visualizzare il grafico a dispersione, dobbiamo seguire la procedura. Abbiamo iniziato definendo le dimensioni sugli assi X e Y. La notazione matematica è stata ora assegnata ad ogni punto. Il ciclo per è stato quindi utilizzato per ottenere i dati di annotazione per ogni punto in modo efficace.

Trasforma e posizione di testo

A volte è meglio aggiungere il testo a una posizione specifica sull'asse o sulla grafica, indipendentemente dal contenuto. Si ottiene in matplotlib regolando la trasformazione. Qualsiasi framework di presentazione visiva richiede un metodo per convertire le coordinate.

Un elemento di dati deve essere visualizzato a volte nella strada in una posizione specifica sul grafico, che deve quindi essere mostrato in pixel nell'immagine. Queste modifiche alle coordinate sono piuttosto semplici e Matplotlib offre una buona varietà di tecnologie per eseguirle in modo efficace. Consideriamo l'istanza di utilizzare tali trasformazioni per visualizzare il testo in diversi punti:

Importa matplotlib.Pyplot come Plt
Importa matplotlib come MPL
Plt.stile.Usa ("Seaborn-WhiteGrid")
Importa Numpy come NP
Fig, ax = PLT.sottotrame (faceColor = 'Red')
ascia.asse ([5, 20, 5, 20])
ascia.Testo (6, 8, ". Dati: (6, 8) ", trasform = ax.transdata)
ascia.testo (0.6, 0.5 ",. Assi: (0.6, 0.5) ", trasform = ax.transassi)
ascia.testo (0.6, 0.6 ",. Figura: (0.6, 0.6) ", trasformazione = fig.trasfigurare);

Il testo è posizionato a sinistra e sopra le dimensioni fornite per impostazione predefinita. IL "."Proprio all'inizio di ogni riga rappresenta il punto di coordinate stimato. In questo caso, sembrano esserci tre aggiustamenti predefiniti che possiamo impiegare. I parametri dei dati collegati rispettivamente con l'asse, i titoli sono forniti dai parametri transdata.

I parametri transassi sono una frazione dell'area degli assi e indicano la posizione dal suo bordo degli assi. I parametri di trasfigure sono identici, ma danno la posizione come parte sostanziale della dimensione visiva, a partire dall'angolo del bordo sinistro del telaio.

Conclusione

Il matplotlib annotato è stato discusso in questo articolo. Abbiamo anche esaminato i suoi requisiti specificati e abbiamo anche spiegato alcuni casi per consentirci di comprenderli appieno. Per ogni istanza, abbiamo modificato la sintassi e valutato i risultati. E alla fine, potremmo affermare che il metodo matplotlib annotato viene utilizzato per annotare i grafici di matplotlib.

Le annotazioni di matplotlib non sono mostrate a causa di un errore. Quando si opera con questo metodo, potremmo trovare l'errore. La causa più collettiva è un errore che si è verificato nel codice. Tra gli errori più diffusi è che il testo di annotazione è posizionato molto al di sopra delle coordinate nell'istruzione. A causa della differenza di dimensioni, potremmo non essere in grado di visualizzare l'annotazione a volte.