Connetti i punti del grafico a dispersione con la linea in Matplotlib

Suraj Joshi 30 gennaio 2023
  1. Chiama show() dopo aver chiamato sia scatter() che plot()
  2. Funzione matplotlib.pyplot.plot() con l’attributo linestyle
  3. Parola chiave zorder per modificare l’ordine di disegno
Connetti i punti del grafico a dispersione con la linea in Matplotlib

Possiamo collegare i punti del grafico scatter con una linea chiamando show() dopo aver chiamato sia scatter() che plot(), chiamando plot() con gli attributi della linea e del punto, e usando la parola chiave zorder per assegnare l’ordine di disegno.

Chiama show() dopo aver chiamato sia scatter() che plot()

matplotlib.pyplot.scatter(x, y) con x come sequenza di coordinate x e y come sequenza di coordinate y crea un grafico a dispersione di punti. Per connettere questi punti del grafico a dispersione in ordine, chiama matplotlib.pyplot.plot(x, y) mantenendo x e y uguali a quelli passati alla funzione scatter().

import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 5, 50)
y = np.sin(2 * np.pi * x)

plt.scatter(x, y)
plt.plot(x, y)
plt.title("Connected Scatterplot points with line")
plt.xlabel("x")
plt.ylabel("sinx")
plt.show()
figure.tight_layout()

Produzione:

Punti di Scatterplot collegati con line_1

Funzione matplotlib.pyplot.plot() con l’attributo linestyle

Possiamo anche connettere i punti scatterplot con la linea semplicemente chiamando la funzione matplotlib.pyplot.plot() insieme all’attributo linestyle.

import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 5, 50)
y = np.sin(2 * np.pi * x)

plt.plot(x, y, linestyle="solid", color="blue")
plt.title("Connected Scatterplot points with line")
plt.xlabel("x")
plt.ylabel("sinx")
plt.show()
figure.tight_layout()

Produzione:

Punti del grafico a dispersione collegati con la linea utilizzando i parametri dello stile di linea e del colore

Allo stesso modo, possiamo provare anche altri diversi linestyle

import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 5, 50)
y = np.sin(2 * np.pi * x)

plt.plot(x, y, "xb-")
plt.title("Connected Scatterplot points with line")
plt.xlabel("x")
plt.ylabel("sinx")
plt.show()

Produzione:

Punti del grafico a dispersione collegati con la linea utilizzando lo stile di linea e i parametri di colore_blue

Parola chiave zorder per modificare l’ordine di disegno

Possiamo usare la parola chiave zorder per impostare l’ordine di disegno nella figura. Assegneremo diversi ordini a plot e scatter e quindi invertiremo gli ordini per mostrare comportamenti diversi dell’ordine di disegno.

import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 5, 50)
y = np.sin(2 * np.pi * x)

plt.scatter(x, y, color="r", zorder=1)
plt.plot(x, y, color="b", zorder=2)

plt.title("Connected Scatterplot points with line")
plt.xlabel("x")
plt.ylabel("sinx")

plt.show()

Produzione:

Punti di Scatterplot collegati con la linea utilizzando zorder

plot() ha l’ordine di 2, più grande dell’ordine di scatter(), quindi il grafico a dispersione è in cima al grafico a linee.

Se invertiamo l’ordine, il grafico a linee sarà in cima al grafico a dispersione.

import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 5, 50)
y = np.sin(2 * np.pi * x)

plt.scatter(x, y, color="r", zorder=2)
plt.plot(x, y, color="b", zorder=1)

plt.title("Connected Scatterplot points with line")
plt.xlabel("x")
plt.ylabel("sinx")

plt.show()

Produzione:

Punti del grafico a dispersione collegati con la linea utilizzando zorder 1

Autore: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

Articolo correlato - Matplotlib Scatter