Comment relier des points de nuage de points à une ligne dans Matplotlib
- 
          
            Appelez show()après avoir appelé à la foisscatter()etplot()
- 
          
            Fonction matplotlib.pyplot.plot()avec des attributs de style linéaire
- 
          
            mot-clé zorderpour changer l’ordre des dessins
 
Nous pouvons relier des points de nuage de points à une ligne en appelant show() après avoir appelé scatter() et plot(), en appelant plot() avec les attributs de ligne et de point, et en utilisant le mot-clé zorder pour assigner l’ordre de dessin.
Appelez show() après avoir appelé à la fois scatter() et plot()
    
matplotlib.pyplot.scatter(x, y) avec x comme séquence de coordonnées x et y comme séquence de coordonnées y crée un nuage de points. Pour relier ces points du nuage de points dans l’ordre, appelez matplotlib.pyplot.plot(x, y) en gardant x et y identiques à ceux passés dans la fonction 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()
Production:

Fonction matplotlib.pyplot.plot() avec des attributs de style linéaire
Nous pouvons également relier des points de scatterplot avec des lignes en appelant simplement la fonction matplotlib.pyplot.plot() avec des attributs 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()
Production:

De même, nous pouvons essayer d’autres styles de lignes différents
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()
Production:

mot-clé zorder pour changer l’ordre des dessins
Nous pouvons utiliser le mot-clé zorder pour définir l’ordre de dessin dans la figure. Nous assignerons différents ordres à plot et scatter, puis nous inverserons les ordres pour montrer différents comportements d’ordre de dessin.
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()
Production:

L’ordre de plot() est 2, plus grand que l’ordre de scatter(), donc, le nuage de points se trouve au dessus du tracé de la ligne.
Si nous inversons l’ordre, alors le tracé de la ligne sera au-dessus du diagramme de dispersion.
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()
Production:

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