Jak zmienić pozycję legendy w matplotlib
Aby zmienić położenie legendy w Matplotlib, możesz użyć funkcji plt.legend() .
Na przykład możesz użyć następującej składni, aby umieścić legendę w lewym górnym rogu wykresu:
plt. legend (loc=' upper left ')
Domyślna lokalizacja to „najlepsza” – w tym miejscu Matplotlib automatycznie znajduje lokalizację legendy na podstawie miejsc, w których unika zakrycia punktów danych.
Można jednak określić jedną z następujących lokalizacji napisów:
- W prawym górnym rogu
- w lewym górnym rogu
- w lewym dolnym rogu
- w prawym dolnym rogu
- PRAWIDŁOWY
- środkowy lewy
- Centroprawica
- dolny środek
- górny środek
- Centrum
Możesz także użyć argumentu bbox_to_anchor() , aby umieścić legendę poza wykresem. Na przykład możesz użyć następującej składni, aby umieścić legendę w prawym górnym rogu poza wykresem:
plt. legend (bbox_to_anchor=( 1.05 , 1 ), loc=' upper left ', borderaxespad= 0 )
Poniższe przykłady pokazują, jak zastosować każdą z tych metod w praktyce.
Przykład 1: zmień położenie legendy na wykresie Matplotlib
Poniższy kod pokazuje, jak umieścić legendę w prawej środkowej części wykresu liniowego Matplotlib:
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 ')
Poniższy kod pokazuje, jak umieścić legendę w lewym górnym rogu wykresu 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]}) #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 ')
Przykład 2: Zmień położenie legendy poza wykresem Matplotlib
Aby umieścić legendę poza wykresem Matplotlib, możemy użyć argumentu bbox_to_anchor() .
Na przykład, oto jak umieścić legendę poza prawym górnym rogiem wykresu:
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 )
A oto jak umieścić legendę poza prawym dolnym rogiem fabuły:
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 )
Szczegółowe wyjaśnienie argumentu bbox_to_anchor() można znaleźć w dokumentacji matplotlib .
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe operacje w Matplotlib:
Jak zmienić rozmiar czcionki legendy w Matplotlib
Jak dodać tytuł do legendy w Matplotlib
Jak dostosować pozycję tytułu w Matplotlib
Jak dostosować położenie etykiety osi w Matplotlib