So ändern sie die reihenfolge der elemente in der matplotlib-legende
Sie können den folgenden Code verwenden, um die Reihenfolge der Elemente in einer Matplotlib-Legende zu ändern:
#get handles and labels handles, labels = plt. gca (). get_legend_handles_labels () #specify order of items in legend order = [1,2,0] #add legend to plot plt. legend ([handles[idx] for idx in order],[labels[idx] for idx in order])
Das folgende Beispiel zeigt, wie diese Syntax in der Praxis verwendet wird.
Beispiel: Ändern Sie die Reihenfolge der Elemente in der Matplotlib-Legende
Angenommen, wir erstellen das folgende Liniendiagramm in Matplotlib:
import pandas as pd import matplotlib. pyplot as plt #create data df = pd. DataFrame ({'points': [11, 17, 16, 18, 22, 25, 26, 24, 29], 'assists': [5, 7, 7, 9, 12, 9, 9, 4, 8], 'rebounds': [6, 8, 8, 10, 14, 12, 12, 10, 11]}) #add lines to plot plt. plot (df['points'], label='Points', color='green') plt. plot (df['assists'], label='Assists', color='steelblue') plt. plot (df['rebounds'], label='Rebounds', color='purple') #add legend plt. legend ()
Die Legendenelemente werden in der Reihenfolge platziert, in der wir die Linien zum Plot hinzugefügt haben.
Wir können jedoch die folgende Syntax verwenden, um die Reihenfolge der Elemente in der Legende anzupassen:
import pandas as pd import matplotlib. pyplot as plt #create data df = pd. DataFrame ({'points': [11, 17, 16, 18, 22, 25, 26, 24, 29], 'assists': [5, 7, 7, 9, 12, 9, 9, 4, 8], 'rebounds': [6, 8, 8, 10, 14, 12, 12, 10, 11]}) #add lines to plot plt. plot (df['points'], label='Points', color='green') plt. plot (df['assists'], label='Assists', color='steelblue') plt. plot (df['rebounds'], label='Rebounds', color='purple') #get handles and labels handles, labels = plt. gca (). get_legend_handles_labels () #specify order of items in legend order = [1,2,0] #add legend to plot plt. legend ([handles[idx] for idx in order],[labels[idx] for idx in order])
Beachten Sie, dass wir Folgendes angegeben haben:
- Ordnung = [1, 2, 0]
Das bedeutet:
- Das erste Element in der Legende sollte die Beschriftung sein, die sich ursprünglich an Indexposition 1 der alten Legende befand („Hilfe“).
- Das zweite Element der Legende sollte die Beschriftung sein, die sich ursprünglich an Indexposition 2 der alten Legende befand („Bounces“).
- Das dritte Element der Legende muss die Beschriftung sein, die sich ursprünglich an Indexposition 0 der alten Legende befand („Punkte“).
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie Sie andere gängige Vorgänge in Matplotlib ausführen:
So ändern Sie die Position einer Legende in Matplotlib
So platzieren Sie eine Legende außerhalb eines Matplotlib-Plots
So ändern Sie die Schriftgröße der Legende in Matplotlib