Tracé multiligne Seaborn
Ce tutoriel discutera de la création d’un tracé multiligne à l’aide de la fonction lineplot()
de Seaborn.
Terrain à plusieurs lignes à Seaborn
La fonction lineplot()
de Seaborn trace les données sous forme de ligne. Nous devons transmettre les valeurs des axes x et y à la fonction pour tracer une ligne. Si nous voulons tracer plusieurs lignes, nous devons créer une trame de données des données données où chaque colonne correspond à chaque ligne.
Pour tracer cinq lignes sur le même tracé, nous devons enregistrer les données de chaque ligne à l’intérieur d’un bloc de données sous forme de colonne, puis passer le bloc de données à l’intérieur du lineplot()
pour tracer plusieurs lignes. La fonction lineplot()
utilisera les valeurs de colonne du bloc de données comme valeurs de l’axe y et l’index des valeurs comme valeurs de l’axe x pour tracer les lignes.
Créons un tableau contenant cinq colonnes et six lignes. Nous allons utiliser la fonction DataFrame()
de la bibliothèque pandas
pour créer la trame de données. Nous devons passer le tableau et le nombre de lignes et de colonnes à l’intérieur de la fonction DataFrame()
.
Nous allons utiliser l’argument data de la fonction lineplot()
pour passer le data frame à l’intérieur de la fonction. Voir le code ci-dessous.
import seaborn as snNew
import pandas as pdNew
import matplotlib.pyplot as pltNew
array = [
[11, 1, 0, 2, 0],
[3, 8, 0, 1, 0],
[0, 16, 3, 0, 0],
[0, 0, 12, 0, 0],
[0, 0, 0, 13, 0],
[0, 1, 0, 0, 16],
]
DetaFrame_cm = pdNew.DataFrame(array, range(6), range(5))
snNew.lineplot(data=DetaFrame_cm)
pltNew.show()
La fonction a tracé cinq lignes avec différentes couleurs et styles de ligne. Nous pouvons créer un tableau NumPy
des données données pour tracer les cinq lignes à l’aide de la fonction ndarray()
de la bibliothèque NumPy
et l’utiliser pour tracer les cinq lignes.
Utilisez l’argument markers de la fonction lineplot()
pour tracer des marqueurs à l’intérieur des lignes. Par défaut, cet argument est faux, mais nous pouvons le définir sur vrai ou sur une liste contenant des symboles de marqueur. Si l’argument est défini sur true, la fonction gérera les marqueurs.
Nous pouvons changer la palette de couleurs pour donner des couleurs aux lignes en utilisant l’argument palette
et définir sa valeur sur un nom de palette comme dark pour les couleurs sombres. Par défaut, les légendes sont définies sur true, mais nous pouvons masquer les légendes en définissant l’argument legend
sur false.
En utilisant l’argument linewidth
, nous pouvons modifier la largeur de la ligne et définir sa valeur sur un nombre à virgule flottante. Nous pouvons définir la taille du marqueur sur n’importe quelle valeur à virgule flottante en utilisant l’argument ms
ou markersize
.
Définissez la couleur de la face du marqueur sur n’importe quelle couleur en utilisant l’argument mfc
ou markerfacecolor
et la couleur ou la première lettre comme r pour le rouge. Nous pouvons définir la couleur du bord du marqueur sur n’importe quelle couleur en utilisant l’argument mec
ou markeredgecolor
.
Définissez la largeur du bord du marqueur sur n’importe quelle valeur à virgule flottante à l’aide de l’argument mew
ou markeredgewidth
. Modifions les propriétés mentionnées ci-dessus.
Voir le code ci-dessous.
import seaborn as snNew
import pandas as pdNew
import matplotlib.pyplot as pltNew
array = [
[11, 1, 0, 2, 0],
[3, 8, 0, 1, 0],
[0, 16, 3, 0, 0],
[0, 0, 12, 0, 0],
[0, 0, 0, 13, 0],
[0, 1, 0, 0, 16],
]
DetaFrame_cm = pdNew.DataFrame(array, range(6), range(5))
snNew.lineplot(
data=DetaFrame_cm,
markers=["o", "d", "h", "p", "*"],
palette="dark",
legend=False,
linewidth=2,
ms=15,
mec="r",
mew=2,
mfc="g",
)
pltNew.show()
Production :
Définissez la taille de la police du texte dans le tracé à l’aide de la fonction set()
et de l’argument font_scale
. Pour augmenter la taille de la police, nous devons définir la valeur font_scale
supérieure à un, diminuer sa valeur et la définir à moins de 1.
Pour augmenter la taille de la police du texte dans le tracé, nous devons utiliser le code ci-dessous.
snNew.set(font_scale=1.5)