So ändern sie die position einer legende in matplotlib
Um die Position einer Legende in Matplotlib zu ändern, können Sie die Funktion plt.legend() verwenden.
Sie können beispielsweise die folgende Syntax verwenden, um die Legende in der oberen linken Ecke des Diagramms zu platzieren:
plt. legend (loc=' upper left ')
Der Standardspeicherort ist „best“ – hier findet Matplotlib automatisch einen Speicherort für die Legende, basierend darauf, wo Datenpunkte nicht abgedeckt werden.
Sie können jedoch einen der folgenden Beschriftungsorte angeben:
- Oben rechts
- in der oberen Ecke links
- unten links
- unten rechts
- RECHTS
- Mitte links
- Mitte-rechts
- unten in der Mitte
- oben in der Mitte
- Center
Sie können auch das Argument bbox_to_anchor() verwenden, um die Legende außerhalb des Plots zu platzieren. Sie können beispielsweise die folgende Syntax verwenden, um die Legende in der oberen rechten Ecke außerhalb des Diagramms zu platzieren:
plt. legend (bbox_to_anchor=( 1.05 , 1 ), loc=' upper left ', borderaxespad= 0 )
Die folgenden Beispiele zeigen, wie jede dieser Methoden in der Praxis angewendet werden kann.
Beispiel 1: Ändern Sie die Position der Legende innerhalb des Matplotlib-Plots
Der folgende Code zeigt, wie die Legende im rechten mittleren Teil eines Matplotlib-Liniendiagramms platziert wird:
import pandas as pd import matplotlib. pyplot as plt #createdata df = pd. DataFrame ({' points ': [11, 17, 16, 18, 22, 25, 26, 24, 29], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4, 8]}) #add lines to plot plt. plot (df[' points '], label=' Points ', color=' green ') plt. plot (df[' assists '], label=' Assists ', color=' steelblue ') #place legend in center right of plot plt. legend (loc=' center right ', title=' Metric ')
Und der folgende Code zeigt, wie die Legende oben links in einem Matplotlib-Plot platziert wird:
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]}) #add lines to plot plt. plot (df[' points '], label=' Points ', color=' green ') plt. plot (df[' assists '], label=' Assists ', color=' steelblue ') #place legend in center right of plot plt. legend (loc=' upper left ', title=' Metric ')
Beispiel 2: Ändern Sie die Position der Legende außerhalb des Matplotlib-Plots
Um die Legende außerhalb eines Matplotlib-Plots zu platzieren, können wir das Argument bbox_to_anchor() verwenden.
So platzieren Sie beispielsweise die Legende außerhalb der oberen rechten Ecke des Diagramms:
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]}) #add lines to plot plt. plot (df[' points '], label=' Points ', color=' green ') plt. plot (df[' assists '], label=' Assists ', color=' steelblue ') #place legend in center right of plot plt. legend (bbox_to_anchor=( 1.02 , 1 ), loc=' upper left ', borderaxespad= 0 )
Und so platzieren Sie die Legende außerhalb der unteren rechten Ecke des Diagramms:
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]}) #add lines to plot plt. plot (df[' points '], label=' Points ', color=' green ') plt. plot (df[' assists '], label=' Assists ', color=' steelblue ') #place legend in center right of plot plt. legend (bbox_to_anchor=( 1.02 , 0.1 ), loc=' upper left ', borderaxespad= 0 )
Eine ausführliche Erläuterung des Arguments bbox_to_anchor() finden Sie in der Matplotlib-Dokumentation .
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 Schriftgröße der Legende in Matplotlib
So fügen Sie der Legende in Matplotlib einen Titel hinzu
So passen Sie die Titelposition in Matplotlib an
So passen Sie die Position der Achsenbeschriftung in Matplotlib an