Есть ли способ сделать оси x = 0 и y = 0 (ордината и абсцисса) жирным шрифтом на декартовом графике?
Например, простой сюжет:
x = np.arange(0.01, 5, 0.1)
y = np.log(x)
plt.plot(x,y)
plt.grid()
Что выглядит так:
Я могу добавить эту «хитрость»:
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')
Тогда я получаю:
Есть ли способ сделать это немного менее хакерским - API или более сложное решение?






Пожалуйста, посмотрите код ниже:
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, чтобы установить ширину линии по вашему выбору