Faire pivoter les étiquettes de coche de l'axe des parcelles Seaborn

Manav Narula 30 janvier 2023
  1. Utilisez la fonction set_xticklabels() pour faire pivoter les étiquettes sur les axes Seaborn
  2. Utilisez la fonction xticks() pour faire pivoter les étiquettes sur les axes Seaborn
  3. Utilisez la fonction setp() pour faire pivoter les étiquettes sur les axes Seaborn
Faire pivoter les étiquettes de coche de l'axe des parcelles Seaborn

Seaborn propose de nombreuses personnalisations pour la figurine finale. L’une de ces personnalisations petites mais essentielles est que nous pouvons contrôler les étiquettes de graduation sur les deux axes.

Par exemple, faites attention au problème avec le graphique suivant.

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

df = pd.DataFrame(
    {
        "Date": [
            "01012019",
            "01022019",
            "01032019",
            "01042019",
            "01052019",
            "01062019",
            "01072019",
            "01082019",
        ],
        "Price": [77, 76, 68, 70, 78, 79, 74, 75],
    }
)
df["Date"] = pd.to_datetime(df["Date"], format="%d%m%Y")

plt.figure(figsize=(15, 8))
ax = sns.barplot(x="Date", y="Price", data=df)

Seaborn faire pivoter les étiquettes 1

Dans le code ci-dessus, nous avons tracé un graphique pour les données de la série chronologique du prix d’un produit. Comme vous pouvez le voir, les dates entières sont tracées sur l’axe des x. Pour cette raison, tout se chevauche et est difficile à lire.

Pour de telles situations, nous pouvons faire pivoter les étiquettes de graduation sur l’axe.

Dans ce didacticiel, nous allons apprendre à faire pivoter de telles étiquettes de coche sur des parcelles marines.

Utilisez la fonction set_xticklabels() pour faire pivoter les étiquettes sur les axes Seaborn

La fonction set_xticklabels() définit les valeurs des étiquettes de graduation sur l’axe des x. Nous pouvons l’utiliser pour faire pivoter les étiquettes. Cependant, cette fonction a besoin de certaines valeurs d’étiquettes pour utiliser la fonction get_xticklabels() qui renvoie les étiquettes par défaut et les fait pivoter à l’aide du paramètre rotation.

Le code suivant montre son utilisation.

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

df = pd.DataFrame(
    {
        "Date": [
            "01012019",
            "01022019",
            "01032019",
            "01042019",
            "01052019",
            "01062019",
            "01072019",
            "01082019",
        ],
        "Price": [77, 76, 68, 70, 78, 79, 74, 75],
    }
)
df["Date"] = pd.to_datetime(df["Date"], format="%d%m%Y")

plt.figure(figsize=(15, 8))
ax = sns.barplot(x="Date", y="Price", data=df)
ax.set_xticklabels(ax.get_xticklabels(), rotation=30)

Seaborn faire pivoter les étiquettes 2

Utilisez la fonction xticks() pour faire pivoter les étiquettes sur les axes Seaborn

Le paramètre rotation dans la fonction matplotlib.pyplot.xticks() peut également réaliser cela. Nous n’avons pas besoin de passer d’étiquettes et pouvons utiliser directement le paramètre dans cette fonction.

Par example,

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

df = pd.DataFrame(
    {
        "Date": [
            "01012019",
            "01022019",
            "01032019",
            "01042019",
            "01052019",
            "01062019",
            "01072019",
            "01082019",
        ],
        "Price": [77, 76, 68, 70, 78, 79, 74, 75],
    }
)
df["Date"] = pd.to_datetime(df["Date"], format="%d%m%Y")

plt.figure(figsize=(15, 8))
ax = sns.barplot(x="Date", y="Price", data=df)
plt.xticks(rotation=45)

Seaborn faire pivoter les étiquettes 3

Utilisez la fonction setp() pour faire pivoter les étiquettes sur les axes Seaborn

Étant donné que la plupart des graphiques Seaborn renvoient un objet axes matplotlib, nous pouvons utiliser la fonction setp() de cette bibliothèque. Nous allons prendre les valeurs des étiquettes de graduation à l’aide de la fonction xtick() et les faire pivoter à l’aide du paramètre rotation de la fonction setp().

Voir le code suivant.

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

df = pd.DataFrame(
    {
        "Date": [
            "01012019",
            "01022019",
            "01032019",
            "01042019",
            "01052019",
            "01062019",
            "01072019",
            "01082019",
        ],
        "Price": [77, 76, 68, 70, 78, 79, 74, 75],
    }
)
df["Date"] = pd.to_datetime(df["Date"], format="%d%m%Y")

plt.figure(figsize=(15, 8))
ax = sns.barplot(x="Date", y="Price", data=df)
locs, labels = plt.xticks()
plt.setp(labels, rotation=45)

Seaborn faire pivoter les étiquettes 4

Auteur: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Article connexe - Seaborn Axis

Article connexe - Seaborn Label