Achsentick-Beschriftungen von Seaborn-Plots drehen
-
Verwenden Sie die Funktion
set_xticklabels()
, um Beschriftungen auf Seaborn-Achsen zu drehen -
Verwenden Sie die Funktion
xticks()
, um Beschriftungen auf Seaborn-Achsen zu drehen -
Verwenden Sie die Funktion
setp()
, um Beschriftungen auf Seaborn-Achsen zu drehen
Seaborn bietet viele Anpassungen für die endgültige Figur. Eine solche kleine, aber wesentliche Anpassung besteht darin, dass wir die Teilstrichbeschriftungen auf beiden Achsen steuern können.
Beachten Sie beispielsweise das Problem mit der folgenden Grafik.
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)
Im obigen Code haben wir ein Diagramm für die Zeitreihendaten des Preises eines Produkts gezeichnet. Wie Sie sehen, sind auf der x-Achse ganze Datumsangaben aufgetragen. Aus diesem Grund überlappt sich alles und ist schwer zu lesen.
In solchen Situationen können wir die Teilstrichbeschriftungen auf der Achse drehen.
In diesem Tutorial lernen wir, wie man solche Häkchenbeschriftungen auf Seegrundstücken dreht.
Verwenden Sie die Funktion set_xticklabels()
, um Beschriftungen auf Seaborn-Achsen zu drehen
Die Funktion set_xticklabels()
setzt die Werte für Tick-Labels auf der x-Achse. Wir können es verwenden, um die Etiketten zu drehen. Diese Funktion benötigt jedoch einige Labelwerte, um die Funktion get_xticklabels()
zu verwenden, die die Standardlabels zurückgibt und sie mit dem Parameter rotation
dreht.
Der folgende Code demonstriert seine Verwendung.
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)
Verwenden Sie die Funktion xticks()
, um Beschriftungen auf Seaborn-Achsen zu drehen
Auch der Parameter rotation
in der Funktion matplotlib.pyplot.xticks()
kann dies erreichen. Wir müssen keine Labels übergeben und können den Parameter direkt in dieser Funktion verwenden.
Beispielsweise,
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)
Verwenden Sie die Funktion setp()
, um Beschriftungen auf Seaborn-Achsen zu drehen
Da die meisten Seaborn-Plots ein Matplotlib-Achsen-Objekt zurückgeben, können wir die Funktion setp()
aus dieser Bibliothek verwenden. Wir nehmen die Tick-Label-Werte mit der Funktion xtick()
und drehen sie mit dem Parameter rotation
der Funktion setp()
.
Siehe den folgenden Code.
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)
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