Come usare pyqtgraph?

Come usare pyqtgraph?

Le attività di visualizzazione scientifica o numerica possono essere svolte facilmente in Python usando varie biblioteche Python, come Plotly, matplotlib, Seaborn, Ggplot, Pyqt, eccetera. Pyqtgraph è un modulo utile del Pyqt libreria per creare un grafico. Questo modulo può creare grafici molto velocemente. La grafica 2D e 3D può essere creata utilizzando questo modulo. Come usare il Pyqtgraph Il modulo per disegnare diversi tipi di grafici ha mostrato in questo tutorial.

Prerequisiti

È necessario installare il modulo PyqtGraph nel sistema prima di creare il grafico. Esegui il seguente comando per installare PyqtGraph utilizzando PIP3.

$ sudo pip3 installa pyqtgraph

Disegna grafico della linea

Un grafico di riga o un grafico della linea è un grafico che visualizza le informazioni utilizzando una serie di grafici di dati. Plotwidget Il widget viene utilizzato per creare tutti i grafici di pyqtgraph. Questo widget contiene una tela su cui è possibile aggiungere o rimuovere qualsiasi grafico.

Esempio-1: disegna un grafico della linea semplice

Il seguente script mostra il modo per disegnare un grafico di riga usando numeri casuali. allineare() La funzione viene utilizzata per generare 10 numeri sequenziali utilizzati per i valori dell'asse x. IL casuale Il modulo di Python viene utilizzato per generare 10 numeri interi casuali utilizzati per i valori dell'asse y. complotto() Il metodo viene utilizzato per disegnare ogni diagramma del grafico della linea in base ai valori dell'asse x e dell'asse y. Quando il codice viene eseguito in modalità interattiva, quindi sys.bandiere.interattivo la bandiera sarà VERO. Se il valore di questo flag non è vero, indica che il loop dell'evento QT non richiede di eseguire perché REPT (RUN, VALUTAZIONE, PRINT, Loop) ha già un loop di eventi.

# Importa il modulo casuale
# Importa il modulo casuale
Importa casuale come RD
# Importa modulo Pyqtgraph
Importa pyqtgraph come pg
# Importa Qtgui dal modulo PyqtGraph
da pyqtgraph.Qt Import Qtgui
# Genera valori di asse x
x = intervallo (0, 10)
# Genera valori dell'asse Y
y = []
per i nell'intervallo (0, 10):
n = rd.Randint (0, 20)
y.append (n)
# Inizializza la trama
PLT = pg.complotto()
# Imposta l'etichetta per l'asse x
Plt.setLabel ('in basso', 'valori generati in sequenza')
# Imposta l'etichetta per l'asse y
Plt.setLabel ('Left', 'Valori generati casualmente')
# Imposta gamma orizzontale
Plt.setxrange (0, 10)
# Imposta la gamma verticale
Plt.setyrange (0, 20)
# Imposta il titolo del grafico
Plt.SettItle ("Grafico della linea semplice")
# Imposta i valori della trama
riga = plt.Trama (x, y)
# Metodo principale
Se __Name__ == '__main__':
# Importa modulo sys
Import sys
# Avvia Qt Event Loop a meno che non sia in modalità interattiva
se sys.bandiere.interattivo != 1:
Qtgui.Qapplicazione.esempio().Exec ()

Produzione:

Il seguente grafico di riga simile verrà visualizzato dopo aver eseguito lo script sopra. Il grafico varierà in ogni esecuzione per i valori casuali.

Esempio-2: disegna un grafico di riga con stile e marcatore

Il seguente script mostra come disegnare un grafico della linea stilista in base ai valori di un elenco di Python. mkpen () La funzione viene utilizzata per impostare il colore e la larghezza della linea. 'o'viene usato come marcatore nel grafico e il colore e la larghezza del marcatore vengono impostati utilizzando Symbolpen E simboli proprietà.

# Importa modulo Pyqtgraph
# Importa modulo Pyqtgraph
Importa pyqtgraph come pg
# Importa Qtgui dal modulo PyqtGraph
da pyqtgraph.Qt Import Qtgui
# Genera valori di asse x
x = intervallo (0, 10)
# Genera valori dell'asse Y
Y = [3, 7, 5, 11, 8, 13, 9, 16, 15, 12]
# Inizializza la trama
PLT = pg.complotto()
# Imposta l'etichetta per l'asse x
Plt.setLabel ('in basso', 'valori di asse x')
# Imposta l'etichetta per l'asse y
Plt.setLabel ('Left', 'Y-Axis Values')
# Imposta gamma orizzontale
Plt.setxrange (0, 10)
# Imposta la gamma verticale
Plt.setyrange (0, 20)
# Imposta il titolo del grafico
Plt.SettItle ("Grafico di linea con stile e marcatore")
# Imposta il colore di sfondo
Plt.SetBackground ('D5ECF2')
# Imposta i valori della trama con il colore della penna e la larghezza
riga = plt.trama (x, y, pen = pg.mkpen ('r', larghezza = 6), simbolo = 'o', symbolpen = 'b', simbolize = 20)
# Aggiungi leggenda
Plt.addLegend ()
# Mostra griglie
Plt.showgrid (x = true, y = true)
# Metodo principale
Se __Name__ == '__main__':
# Importa modulo sys
Import sys
# Avvia Qt Event Loop a meno che non sia in modalità interattiva
se sys.bandiere.interattivo != 1:
Qtgui.Qapplicazione.esempio().Exec_ ()
# Metodo principale
Se __Name__ == '__main__':
# Importa modulo sys
Import sys
# Avvia Qt Event Loop a meno che non sia in modalità interattiva
se sys.bandiere.interattivo != 1:
Qtgui.Qapplicazione.esempio().Exec_ ()

Produzione:

Il grafico della riga seguente verrà visualizzato dopo aver eseguito lo script sopra.

Disegna grafico a barre

Un insieme di dati può essere visualizzato utilizzando un grafico a barre. Una barra semplice crea confrontando l'elenco dei dati con una gamma correlata di dati. Bargrafitem La classe viene utilizzata per creare il grafico a barre utilizzando pyqtgraph.

Esempio-3: disegna un grafico a barre

Il seguente script mostra come disegnare un grafico a barre in base ai valori di un array numpy. Bargrafitem viene utilizzato per disegnare un grafico a barre con colore blu e un valore di larghezza di 0.5.

# Importa modulo Pyqtgraph
# Importa modulo Pyqtgraph
Importa pyqtgraph come pg
# Importa Qtgui dal modulo PyqtGraph
da pyqtgraph.Qt Import Qtgui
# Importa Numpy Library
Importa Numpy come NP
# Genera l'asse X
x = np.Arange (0, 10)
# Genera l'asse Y
y = np.Array ([3, 5, 7, 9, 5, 8, 10, 6, 5, 2])
# Imposta i valori del grafico a barre e il colore e la larghezza del pennello
BG = pg.Bargrafitem (x = x, altezza = y, larghezza = 0.5, pennello = 'b')
# Definisci la variabile della trama
PLT = pg.complotto()
# Imposta l'etichetta per l'asse x
Plt.setLabel ('in basso', '

Valori dell'asse X

')
# Imposta l'etichetta per l'asse y
Plt.SetLabel ("Left", "

Valori dell'asse Y

')
# Imposta il titolo del bar
Plt.Settietle ('

Grafico a barre usando pyqtgraph

')
# Aggiungi gli elementi del grafico a barre
Plt.additem (bg)
# Metodo principale
Se __Name__ == '__main__':
# Importa modulo sys
Import sys
# Avvia Qt Event Loop a meno che non sia in modalità interattiva
se sys.bandiere.interattivo != 1:
Qtgui.Qapplicazione.esempio().Exec_ ()

Produzione:

Il seguente grafico a barre verrà visualizzato dopo aver eseguito lo script sopra.

Conclusione

Creazione di tre diversi tipi di grafici con valori casuali, elenchi e array numpy ha mostrato in questo tutorial utilizzando tre semplici esempi. I lettori saranno in grado di utilizzare il modulo PyqtGraph per implementare i grafici della linea e delle barre dopo aver letto questo tutorial.