Як змінити положення легенди в matplotlib
Щоб змінити положення легенди в Matplotlib, ви можете скористатися функцією plt.legend() .
Наприклад, ви можете використати такий синтаксис, щоб розмістити легенду у верхньому лівому куті діаграми:
plt. legend (loc=' upper left ')
Розташування за замовчуванням — «найкраще» — це місце, де Matplotlib автоматично знаходить розташування для легенди на основі того, де він уникає охоплення точок даних.
Однак ви можете вказати одне з таких місць розташування підписів:
- Вгорі справа
- у верхньому лівому куті
- внизу ліворуч
- праворуч внизу
- ПРАВИЛЬНО
- по центру ліворуч
- Правоцентристський
- внизу по центру
- верхній центр
- центр
Ви також можете використовувати аргумент bbox_to_anchor() , щоб розмістити легенду за межами графіка. Наприклад, ви можете використовувати такий синтаксис, щоб розмістити легенду у верхньому правому куті за межами діаграми:
plt. legend (bbox_to_anchor=( 1.05 , 1 ), loc=' upper left ', borderaxespad= 0 )
Наступні приклади показують, як використовувати кожен із цих методів на практиці.
Приклад 1: змініть положення легенди в діаграмі Matplotlib
Наступний код показує, як розмістити легенду в правій центральній частині лінійного графіка 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 ')
А наступний код показує, як розмістити легенду у верхньому лівому куті діаграми 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 ')
Приклад 2: змініть положення легенди за межами діаграми Matplotlib
Щоб розмістити легенду за межами діаграми Matplotlib, ми можемо використати аргумент bbox_to_anchor() .
Наприклад, ось як розмістити легенду за межами верхнього правого кута графіка:
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 )
І ось як розмістити легенду поза нижнім правим кутом графіка:
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 )
Зверніться до документації matplotlib для детального пояснення аргументу bbox_to_anchor() .
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові операції в Matplotlib:
Як змінити розмір шрифту легенди в Matplotlib
Як додати назву до легенди в Matplotlib
Як налаштувати позицію заголовка в Matplotlib
Як налаштувати положення мітки осі в Matplotlib