Matplotlib / pyplot - выделить оси (ордината и абсцисса) жирным шрифтом

Есть ли способ сделать оси x = 0 и y = 0 (ордината и абсцисса) жирным шрифтом на декартовом графике?

Например, простой сюжет:

x = np.arange(0.01, 5, 0.1)
y = np.log(x)
plt.plot(x,y)
plt.grid()

Что выглядит так:

Matplotlib / pyplot - выделить оси (ордината и абсцисса) жирным шрифтом

Я могу добавить эту «хитрость»:

x = np.arange(0.01, 5, 0.1)
y = np.log(x)
plt.plot(x,y)
plt.grid()

plt.plot(x,0*x, 'k')
plt.plot(x*0,x, 'k')
plt.plot(x*0,-x, 'k')

Тогда я получаю:

Matplotlib / pyplot - выделить оси (ордината и абсцисса) жирным шрифтом

Есть ли способ сделать это немного менее хакерским - API или более сложное решение?

Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
0
828
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Пожалуйста, посмотрите код ниже:

fig, ax = plt.subplots(1, 1, figsize=(9, 9))
ax.plot(x, y)
ax.grid(True)
ax.axhline(y=0, lw=5, color='k')
ax.axvline(x=0, lw=5, color='k')

С практической точки зрения, я всегда использую Artist для создания графиков matplotlib, что значительно упрощает настройку свойств.

Хороший ответ, я бы добавил к нему, что вы также можете передать color (например, color='k') в ключевых словах axhline и axvline, чтобы он оставался черным, если хотите, в дополнение к настройке lw, чтобы установить ширину линии по вашему выбору

Другие вопросы по теме