Data Visualization

Мастерство работы с легендами в Matplotlib: удаление и управление

Spread the love

Легенды необходимы для наглядной визуализации данных, но иногда они загромождают график. Matplotlib предоставляет несколько способов управления легендами, позволяя полностью удалить их или просто скрыть для более чистой визуализации. В этом руководстве рассматриваются четыре эффективных метода.

Оглавление

1. Прямое удаление легенды

Этот подход использует matplotlib.axes.Axes.get_legend().remove() для удаления легенды после её создания. Это простой способ, не оставляющий следов.


import matplotlib.pyplot as plt

fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6], label='Line 1')
ax.plot([1, 2, 3], [7, 8, 9], label='Line 2')

legend = ax.legend()  # Создаем легенду
legend.remove()       # Удаляем её

plt.show()

2. Скрытие легенды

matplotlib.axes.Axes.get_legend().set_visible(False) обеспечивает больший контроль. Легенда остаётся в памяти, позволяя отобразить её позже с помощью set_visible(True).


import matplotlib.pyplot as plt

fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6], label='Line 1')
ax.plot([1, 2, 3], [7, 8, 9], label='Line 2')

legend = ax.legend()
legend.set_visible(False)

plt.show()

3. Предотвращение создания легенды

Самый эффективный метод — предотвратить генерацию легенды. Используйте label='nolegend' (или любой неиспользуемый ярлык) внутри функции plot().


import matplotlib.pyplot as plt

fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6], label='nolegend')
ax.plot([1, 2, 3], [7, 8, 9], label='nolegend')

plt.show()

4. Удаление легенды через присваивание атрибута

Прямое присваивание атрибута legend_ объекта Axes значению None удаляет существующую легенду и предотвращает её последующее создание.


import matplotlib.pyplot as plt

fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6], label='Line 1')
ax.plot([1, 2, 3], [7, 8, 9], label='Line 2')

ax.legend_ = None

plt.show()

Выбор подходящего метода зависит от ваших потребностей. Для немедленного удаления эффективно использовать методы 1 и 4. Для возможности повторного отображения лучше подходит метод 2. Предотвращение создания (метод 3) оптимально, когда легенда заведомо не нужна.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *