Текст галочки оси y на моем графике matplotlib содержит слишком много десятичных цифр.
Как я могу отформатировать текст, чтобы показать только две десятичные цифры.
И.Е. Я хотел бы конвертировать 10.39658602
в 10.40
Я уже пробовал с:
ax.get_yaxis().set_major_formatter(matplotlib.ticker.FormatStrFormatter('%5.2f'))
но десятичные цифры установлены в 0 (предыдущее число становится 10.00
).
Вот какое-то изображение. До:

После того, как:

Редактировать: я также включил пример кода для воспроизведения проблемы.
fig = plt.figure()
ax = fig.add_subplot(1, 1, 1)
lineObjects = plt.plot(epochs, data1, 'rs',
epochs, data2, 'b^',
epochs, data3, 'gv',
epochs, data4, 'ko', )
# also %.2f does not work as intended
ax.get_yaxis().set_major_formatter(matplotlib.ticker.FormatStrFormatter('%5.2f'))
plt.show()
Я использую Python 3.6 на Anaconda. data1
, data2
, data3
, data4
- это NumPy ndarray
s типа str_
, я уже пытался преобразовать их в float
, но результаты аналогичны.