Як змінити положення легенди в 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

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *