Matplotlib Line Chart

Matplotlib Line Chart

In questo articolo, spiegheremo come usare La funzione della trama in Python.

La trama è ampiamente utilizzata dall'analisi dei dati per scoprire la relazione tra due set di dati numerici. In questo articolo, vedremo come usare il matplotlib.Pyplot Per disegnare un grafico a linea. Questo articolo ti fornirà dettagli completi che devi lavorare sulla funzione della trama.

IL matplotlib.pypolt offre diversi modi per tracciare il grafico. Per tracciare il grafico come grafico di riga, utilizziamo il diagramma delle funzioni ().

La sintassi è:

1
2
3
Importa matplotlib.Pyplot come Plt
Plt.Trama (x, y)

Qui, il X appartiene all'asse X e la y appartiene all'asse y.

Esempi:

Esempio 1: disegna un grafico a riga con parametri predefiniti

In questo esempio, disegneremo un grafico a linee usando il matplotlib.Pyplot impostazioni predefinite. Creiamo solo due punti dati (X e Y) e tracciamo il grafico come mostrato di seguito. Questo semplice esempio ti aiuterà a capire il grafico della linea. I dati che abbiamo creato qui spiegano come i dipendenti dei dipendenti aumentano ogni anno dal 2011 al 2016. Possiamo vedere direttamente dai dati, ma le stesse informazioni verranno visualizzate tramite il grafico delle linee.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# line_chart_with_default_settings.Py
# Importa la libreria richiesta
Importa matplotlib.Pyplot come Plt
Dati # x e y
NumberOFemp = [13, 200, 250, 300, 350, 400]
Anno = [2011, 2012, 2013, 2014, 2015, 2016]
# Traccia un grafico a righe
Plt.Trama (anno, numerofemp)
Plt.spettacolo()

Produzione: Python line_chart_with_default_settings.Py

Riga da 3 a 8: Importiamo la libreria richiesta e creiamo due elenchi per xey. L'elenco Numberoftemp rappresenta l'asse x e l'anno dell'elenco rappresenta l'asse y.

Riga da 11 a 12: Passiamo quei parametri X e Y alla funzione del diagramma, quindi tracciamo il grafico della linea.

Esempio 2: aggiunta dei nomi dell'etichetta lungo l'asse

In questo esempio, cambieremo alcune impostazioni predefinite. Nell'esempio precedente, se vediamo il diagramma del grafico, è difficile capire cosa sta cercando di dire il grafico perché non ci sono informazioni sui dati dell'asse X o dell'asse Y. Inoltre, non siamo in grado di vedere dove risiedono i dati effettivi nella trama. Quindi, aggiungeremo marcatori per vedere i punti dati sulla trama insieme alle etichette.

L'elenco del marcatore che possiamo usare è riportato di seguito:

marcatore simbolo descrizione
"." punto
"," pixel
"O" cerchio
"V" triangle_down
"^" triangle_up
"<“ Triangle_left
">" triangle_right
"1" tri_down
"2" tri_up
"3" tri_left
"4" tri_right
"8" Ottagono
"S" piazza
"P" Pentagono
"P" più (riempito)
"*" stella
"H" hexagon1
"H" hexagon2
"+" più
"X" X
"X" x (pieno)
"D" diamante
"D" thin_diamond
"|" vline
"_" hline
0 (Tickleft) Tickleft
1 (Tickright) Tickright
2 (tickup) tickup
3 (tickdown) tickdown
4 (Caretleft) caretleft
5 (Caretright) Caretright
6 (caretup) accarezzare
7 (accompagnatore) ASSEGNATO
8 (CareTleftBase) Celetleft (centrato alla base)
9 (CaretrightBase) CareTright (centrato alla base)
10 (CareTUpbase) Celetup (centrato alla base)
11 (Caretdownbase) ASSEGNADODO (centrato alla base)
"Nessuno" "," o "" Niente
'$… $' Renderne la stringa usando MathText. E.G., "$ F $" per il marcatore che mostra la lettera.
Vert Un elenco di coppie (x, y) utilizzate per i vertici del percorso. Il centro del marcatore si trova a (0, 0) e la dimensione è normalizzata, in modo tale che il percorso creato sia incapsulato all'interno della cella unitaria.

Rif: https: // matplotlib.org/stable/api/markers_api.html

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# LINECHART_LABELS_MARKER.Py
# Importa la libreria richiesta
Importa matplotlib.Pyplot come Plt
Dati # x e y
NumberOFemp = [13, 200, 250, 300, 350, 400]
Anno = [2011, 2012, 2013, 2014, 2015, 2016]
# Traccia un grafico a righe
Plt.Trama (anno, NumberOFemp, marker = "O")
# Imposta il nome dell'etichetta del titolo dell'Asse X
Plt.xlabel ("anno")
# Imposta il nome dell'etichetta del titolo dell'Asse X
Plt.Ylabel ("Numero di dipendenti")
# imposta il nome del grafico dell'etichetta
Plt.Titolo ("Numero di dipendente V/S Year Growth")
Plt.spettacolo()

Produzione: Python LineChart_Labels_marker.Py

Riga 11: Aggiungiamo un altro parametro nel marcatore della funzione trama. Il marcatore verrà utilizzato per visualizzare i punti dati sul grafico. Ci sono diversi marcatori disponibili per supportare i dati forniti.

Riga 13 a 19: Impostiamo i nomi delle etichette lungo l'asse x, l'asse y insieme al nome del titolo del grafico.

Esempio 3:

La funzione della trama ha un concetto di formattazione di stringhe la cui sintassi è così:

1
'[marcatore] [line] [colore]' '

Nella sintassi sopra, il primo rappresenta il valore marcatore, il secondo rappresenta il tipo di linea e l'ultimo valore rappresenta il colore. Quindi, in questo esempio useremo questa opzione di formato stringa.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# LINECHART_FORMATTINGSTRING.Py
# Importa la libreria richiesta
Importa matplotlib.Pyplot come Plt
Dati # x e y
NumberOFemp = [13, 200, 250, 300, 350, 400]
Anno = [2011, 2012, 2013, 2014, 2015, 2016]
# Traccia un grafico a righe
Plt.trama (anno, numeroofemp, "o-r")
# Imposta il nome dell'etichetta del titolo dell'Asse X
Plt.xlabel ("anno")
# Imposta il nome dell'etichetta del titolo dell'Asse X
Plt.Ylabel ("Numero di dipendenti")
# imposta il nome del grafico dell'etichetta
Plt.Titolo ("Numero di dipendente V/S Year Growth")
Plt.spettacolo()

Riga 11: Puoi vedere che abbiamo aggiunto una stringa, "o-r", questa stringa possiamo dividere in tre parti in cui "o" rappresenterà il creatore, "-" mostrerà il tipo di linea e "r" rappresenta il valore rosso rosso. Dopo aver usato la stringa sopra, il nostro grafico della linea tracciato apparirà come sotto:

Produzione: Python LineChart_FormattingString.Py

Possiamo anche modificare il valore del formato stringa in base alla nostra scelta. Quindi, di nuovo useremo la formattazione della stringa ma con valori diversi:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# LINECHART_FORMATTINGSTRING.Py
# Importa la libreria richiesta
Importa matplotlib.Pyplot come Plt
Dati # x e y
NumberOFemp = [13, 200, 250, 300, 350, 400]
Anno = [2011, 2012, 2013, 2014, 2015, 2016]
# Traccia un grafico a righe
Plt.trama (anno, numeroofemp, "*-b")
# Imposta il nome dell'etichetta del titolo dell'Asse X
Plt.xlabel ("anno")
# Imposta il nome dell'etichetta del titolo dell'Asse X
Plt.Ylabel ("Numero di dipendenti")
# imposta il nome del grafico dell'etichetta
Plt.Titolo ("Numero di dipendente V/S Year Growth")
Plt.spettacolo()

Riga 11: Cambiamo il formato stringa in "*-b".

Dopo aver modificato il formato della stringa, il nostro grafico della linea viene visualizzato di seguito. Quindi, possiamo regolare il valore del formato stringa in base alla nostra scelta. Il vantaggio dell'utilizzo di questo, non dobbiamo usare il nome del parametro come marker e colore. In formato stringa, "B" rappresenta il colore blu.

Esempio 4: colorare la trama della linea

In questo esempio, cambieremo il colore del diagramma di linea usando il parametro. Negli esempi precedenti, abbiamo visto questa opzione di cambiamento di colore attraverso la formattazione della stringa. Tuttavia, possiamo anche modificare il colore usando il parametro come altri parametri.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# Change_colour.Py
# Importa la libreria richiesta
Importa matplotlib.Pyplot come Plt
Dati # x e y
NumberOFemp = [13, 200, 250, 300, 350, 400]
Anno = [2011, 2012, 2013, 2014, 2015, 2016]
# Traccia un grafico a righe
Plt.Plot (anno, NumberOFemp, marker = 'd', mfc = 'Green', mec = 'giallo', ms = '7')
# Imposta il nome dell'etichetta del titolo dell'Asse X
Plt.xlabel ("anno")
# Imposta il nome dell'etichetta del titolo dell'Asse X
Plt.Ylabel ("Numero di dipendenti")
# imposta il nome del grafico dell'etichetta
Plt.Titolo ("Numero di dipendente V/S Year Growth")
Plt.spettacolo()

Riga 11: Passiamo il parametro marker = "d", mfc (markerfacecolor) colore verde, mec (markeredgecolor) giallo e ms (marcatura).

Il MEC (markeredgecolor) è un colore che si trova al di fuori del punto dati. Il diagramma finale dopo l'esecuzione del programma sopra verrà visualizzato di seguito:

Esempio 5: tracciare più grafici sullo stesso grafico quando la scala della riga è la stessa

Il matplotlib supporta anche disegnare più grafici sul grafico della stessa linea. Possiamo disegnare lo stesso grafico usando l'asse di condivisione. A volte devi solo condividere l'asse X e l'asse Y. Tuttavia, a volte dobbiamo condividere l'asse X e l'asse Y, entrambi dipendono dal tipo di valori che abbiamo. Qui, in questo esempio, abbiamo entrambi valori della stessa scala, quindi possiamo facilmente tracciare il grafico l'uno sull'altro.

Vedremo entrambi gli scenari sopra per capirli in modo migliore.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# condiviso_x_axis.Py
# Importa la libreria richiesta
Importa matplotlib.Pyplot come Plt
Dati # x e y
NUMEROFEMP_A = [13, 200, 250, 300, 350, 400]
NUMEROFEMP_B = [10, 100, 150, 200, 250, 800]
Anno = [2011, 2012, 2013, 2014, 2015, 2016]
# Traccia un grafico a righe
Plt.Plot (anno, NUMEROFEMP_A, marker = 'd', mfc = 'verde', mec = 'giallo', ms = '7')
Plt.Plot (anno, NUMEROFEMP_B, marker = 'o', mfc = 'rosso', mec = 'verde', ms = '7')
# Imposta il nome dell'etichetta del titolo dell'Asse X
Plt.xlabel ("anno")
# Imposta il nome dell'etichetta del titolo dell'Asse X
Plt.Ylabel ("Numero di dipendenti")
# imposta il nome del grafico dell'etichetta
Plt.Titolo ("Numero di dipendente V/S Year Growth")
Plt.Legend (['NumberOFemp_A', 'NumberOFemp_B'])
Plt.spettacolo()

Riga da 7 a 8: Abbiamo creato due elenchi di dati, A e B, per l'asse x. Ma sia A che B hanno gli stessi valori dell'asse Y. Quindi in questo grafico, condividiamo l'asse X solo perché la scala dell'asse y per A e B è la stessa.

Riga da 12 a 13: Abbiamo appena aggiunto un'altra funzione di trama con alcuni parametri diversi.

L'output è mostrato di seguito, con l'asse x condiviso.

Produzione: Python condiviso_x_axis.Py

Esempio 6: grafico multiplo quando la scala non è la stessa

Ora, tracceremo un grafico di linea in cui non abbiamo l'asse x sulla stessa scala. Quindi, possiamo tracciare le diverse scale dell'asse x sui lati sinistro e destro del grafico usando la funzione Twinx ().

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
# line_with_different_scale.Py
# Importa la libreria richiesta
Importa matplotlib.Pyplot come Plt
Dati # x e y
NumberOFemp = [13, 200, 250, 300, 350, 400]
rev = [0.4, 0.6, 0.8, 0.7, 0.8, 0.9]
Anno = [2011, 2012, 2013, 2014, 2015, 2016]
# NumberOfemp di trama su xaxis_1
Fig, xaxis_1 = plt.sottotrame ()
xaxis_1.Plot (anno, NumberOFemp, marker = 'd', mfc = 'Green', mec = 'giallo', ms = '7')
xaxis_1.set_xlabel ("anno")
xaxis_1.set_ylabel ("numero di dipendenti")
xaxis_1.set_title ("numero di dipendenti e entrate")
# Crea xaxis_2 con asse x condiviso
xaxis_2 = xaxis_1.Twinx ()
# trama rev su xaxis_2
xaxis_2.trama (anno, rev, marker = 'o', mfc = 'rosso', mec = 'verde', ms = '7')
xaxis_2.set_ylabel ("rev [$ m]")
# Impostazione della leggenda
Fico.Legenda (['Numero di dipendente', 'Rev'], loc = 'in alto a sinistra')
Plt.spettacolo()

Riga 4: Importiamo la libreria richiesta.

Riga da 7 a 9: Abbiamo creato tre set di dati. Il nuovo set di dati è rev-list, che mostra le entrate dell'azienda. Qui, abbiamo diverse scale dell'asse X. Quindi, possiamo mostrare le diverse scale sui lati sinistro e destro. Per questo, dobbiamo usare la funzione Twinx () per creare assi diversi condividendo lo stesso asse x.

Riga da 12 a 16: Abbiamo usato il PLT.funzione subplot () per creare il nostro primo grafico di riga sul grafico.

Riga da 19 a 22: Abbiamo condiviso l'asse x usando la funzione twinx () e assegnato il nome xaxis_2.

Produzione: Python Line_with_different_scale.Py

L'output seguente mostra i due diversi assi X sui lati sinistro e destro.

Conclusione:

In questo articolo, abbiamo visto come utilizzare la funzione della trama per disegnare un grafico a linea. Abbiamo spiegato tutti i principali concetti necessari per disegnare un grafico a linea usando il matplotlib. Inoltre, abbiamo aggiunto il link GitHub per scaricare lo script Python per questo articolo.