07 Июл 2023
2 мин
668

Скрытие текста осей на графиках matplotlib

При создании графиков с помощью библиотеки matplotlib в Python, часто возникает необходимость убрать метки значений (так называемые «ticks») и подписи к

Содержание

При создании графиков с помощью библиотеки matplotlib в Python, часто возникает необходимость убрать метки значений (так называемые «ticks») и подписи к ним с осей графика. Это может быть полезно, например, при создании композиции из нескольких графиков, когда подписи к осям могут создавать лишний шум и отвлекать от основного содержания.

Рассмотрим простой пример графика, который был сгенерирован следующим кодом:

import matplotlib.pyplot as plt

x = [1, 2, 3, 4, 5]
y = [1, 4, 9, 16, 25]
plt.plot(x, y)
plt.show()

По умолчанию на графике отображаются подписи значений по осям x и y. Но что делать, если их нужно скрыть?

Скрытие подписей к осям

Для скрытия подписей к осям, можно использовать метод set_visible(), который применяется к объектам подписей осей. Пример кода приведен ниже:

import matplotlib.pyplot as plt

x = [1, 2, 3, 4, 5]
y = [1, 4, 9, 16, 25]
plt.plot(x, y)

ax = plt.gca()
ax.axes.xaxis.set_visible(False)
ax.axes.yaxis.set_visible(False)

plt.show()

В данном случае мы получим график без подписей к осям.

Скрытие меток значений

Другой распространенный вопрос — как скрыть метки значений (ticks) на осях? Это можно сделать с помощью метода set_ticks(), которому передается пустой список. Пример кода для этого случая:

import matplotlib.pyplot as plt

x = [1, 2, 3, 4, 5]
y = [1, 4, 9, 16, 25]
plt.plot(x, y)

ax = plt.gca()
ax.axes.xaxis.set_ticks([])
ax.axes.yaxis.set_ticks([])

plt.show()

Таким образом, можно получить график без меток значений.

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

import matplotlib.pyplot as plt

x = [1, 2, 3, 4, 5]
y = [1, 4, 9, 16, 25]
plt.plot(x, y)

ax = plt.gca()
ax.axes.xaxis.set_visible(False)
ax.axes.yaxis.set_visible(False)
ax.axes.xaxis.set_ticks([])
ax.axes.yaxis.set_ticks([])

plt.show()

Это позволяет создавать более чистые и наглядные графики, на которых нет лишней информации.

Содержание

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

Определи профессию по рисунку