Удалить или адаптировать границу рамки легенды с помощью matplotlib

105

При построении графика с использованием matplotlib:

  1. Как убрать коробку легенды?
  2. Как изменить цвет границы поля легенды?
  3. Как убрать только границу рамки легенды?
Маттин
источник

Ответы:

196

При построении графика с использованием matplotlib:

Как убрать коробку легенды?

plt.legend(frameon=False)

Как изменить цвет границы поля легенды?

leg = plt.legend()
leg.get_frame().set_edgecolor('b')

Как убрать только границу рамки легенды?

leg = plt.legend()
leg.get_frame().set_linewidth(0.0)
Маттин
источник
3
Как насчет интерфейса ООП?
ifly6
29

Еще один связанный с этим вопрос, поскольку мне потребовалась целая вечность, чтобы найти ответ:

Как сделать фон легенды пустым ( т.е. прозрачным, а не белым):

legend = plt.legend()
legend.get_frame().set_facecolor('none')

Предупреждение, вы хотите 'none'(строка). Noneозначает вместо этого цвет по умолчанию.

Кевин Дж. Блэк
источник
7
Я думаю , что предпочтительный способ сделать это состоит в использовании framealpha, то есть plt.legend(framealpha=0.0). Это будет включать коробку, хотя
MT