Legende in Seaborn Plot

Manav Narula 21 Dezember 2022
Legende in Seaborn Plot

Eine Legende ist normalerweise ein kleines Kästchen, das an einer Ecke Ihres Diagramms angezeigt wird und verwendet wird, um Informationen zu den verschiedenen Elementen des Diagramms zu erhalten. Wenn das Diagramm mehrere Daten enthält, wird angegeben, welche Komponente welche Daten darstellt.

In diesem Tutorial erfahren Sie, wie Sie einer einfachen Handlung auf See eine Legende hinzufügen oder anpassen.

Standardmäßig fügt seaborn dem Diagramm automatisch eine Legende hinzu.

Beispielsweise,

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

df = pd.DataFrame(
    {"Day 1": [7, 1, 5, 6, 3, 10, 5, 8], "Day 2": [1, 2, 8, 4, 3, 9, 5, 2]}
)

sns.lineplot(data=df)

Meeresgeborenenlegende 1

Beachten Sie, dass sich die Legende in der oberen rechten Ecke befindet.

Wenn wir eine Legende explizit hinzufügen möchten, können wir die Funktion legend() aus der matplotlib-Bibliothek verwenden. Auf diese Weise können wir unsere eigenen Labels explizit hinzufügen.

Beispielsweise,

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

df = pd.DataFrame(
    {"Day 1": [7, 1, 5, 6, 3, 10, 5, 8], "Day 2": [1, 2, 8, 4, 3, 9, 5, 2]}
)

sns.lineplot(data=df)
plt.legend(labels=["Legend_Day1", "Legend_Day2"])

seelgeborene Legende 2

Beachten Sie, dass die Seaborn-Bibliothek auf dem matplotlib-Modul basiert und diese verwendet, um ihre Diagramme zu erstellen. So können wir die Funktion legend() auch für seegeborene Parzellen verwenden.

Wir können auch kleine Anpassungen an der Legende vornehmen. Zum Beispiel können wir der Legende einen Titel hinzufügen, indem wir den Parameter title in der Funktion legend() verwenden, wie unten gezeigt.

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

df = pd.DataFrame(
    {"Day 1": [7, 1, 5, 6, 3, 10, 5, 8], "Day 2": [1, 2, 8, 4, 3, 9, 5, 2]}
)

sns.lineplot(data=df)
plt.legend(labels=["Legend_Day1", "Legend_Day2"], title="Title_Legend")

Meeresgeborenenlegende 3

Die fontsize und title_fontsize sind die beiden Parameter, mit denen die Schriftart des Inhalts in der Legende bzw. der Titel geändert werden.

Siehe den Code unten.

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

df = pd.DataFrame(
    {"Day 1": [7, 1, 5, 6, 3, 10, 5, 8], "Day 2": [1, 2, 8, 4, 3, 9, 5, 2]}
)

sns.lineplot(data=df)
plt.legend(
    labels=["Legend_Day1", "Legend_Day2"],
    title="Title_Legend",
    fontsize="large",
    title_fontsize="10",
)

Meeresgeborenenlegende 4

Beachten Sie, dass die title_fontsize nicht in jeder Version von matplotlib vorhanden ist. Überprüfen Sie daher bitte Ihre Version, bevor Sie sie verwenden.

Wir können die Größe und Position des Legendenfelds mit den Parametern loc und bbox_to_anchor angeben.

loc wird verwendet, um den Ort der Legende anzugeben. Unterschiedliche Nummern geben unterschiedliche Standorte an. Der Wert ist standardmäßig 0, was bedeutet, dass nach der besten Position zum Platzieren der Legende gesucht wird, an der minimale Überlappungen auftreten.

Die bbox_to_anchor gibt die Position der Legende in Bezug auf die im Parameter loc angegebene Position an. Wenn wir den Parameter bbox_to_anchor mit einem 2-Elemente-Tupel setzen, werden seine Werte als x- und y-Werte für die Positionierung entlang der angegebenen loc betrachtet.

Beispielsweise,

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

df = pd.DataFrame(
    {"Day 1": [7, 1, 5, 6, 3, 10, 5, 8], "Day 2": [1, 2, 8, 4, 3, 9, 5, 2]}
)

sns.lineplot(data=df)
plt.legend(labels=["Legend_Day1", "Legend_Day2"], loc=2, bbox_to_anchor=(1, 1))

Meeresgeborenenlegende 5

Beachten Sie, dass der Wert des Arguments loc 2 ist, was die Position oben links angibt.

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

Verwandter Artikel - Seaborn Legend