Funzione Seaborn Set_xticklabels
Questo articolo introdurrà come controllare le etichette di graduazione su entrambi gli assi.
Ad esempio, si noti il problema con il grafico seguente.
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)
Nella figura sopra, intere date sono tracciate sull’asse x. Ma tutto è sovrapposto ed è difficile da leggere.
Possiamo usare la funzione set_xticklabels()
per impostare etichette personalizzate per l’asse x. Un grafico Seaborn restituisce un oggetto di tipo istanza degli assi matplotlib. Possiamo usare questa funzione su questo oggetto.
Ad esempio, possiamo passare le etichette come nomi dei mesi come mostrato di seguito nel problema menzionato sopra.
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(["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug"])
Possiamo anche eseguire piccole personalizzazioni sul risultato finale. Possiamo usare il parametro rotation
per ruotare di qualche grado le etichette finali del segno di spunta o alterare la loro dimensione del carattere usando il parametro size
.
Se vogliamo usare questi parametri sulle etichette di spunta predefinite, possiamo usare la funzione get_xticklabels()
. Restituisce la lista delle etichette di spunta predefinite dal grafico. Possiamo usare questa funzione quando vogliamo personalizzare le etichette di spunta predefinite usando i parametri di rotation
o size
.
Controllare il codice seguente per vedere come utilizzare questa funzione.
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, size=10)
Allo stesso modo, possiamo eseguire le funzioni sull’asse y usando le funzioni set_yticklabels()
e get_yticklabels()
.
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