matplotlib: форматирует значения смещения оси к целым числам или определенному числу
У меня есть фигура matplotlib, на которой я строю данные, которые всегда называют наносекундами (1e-9). На оси у, если у меня есть данные, которые десятки наносекунд, т.е. 44e-9, значение на оси отображается как 4,4 с смещением + 1e-8. Можно ли заставить ось показывать 44 со смещением + 1e-9?
То же самое относится и к моей оси x, где ось показывает + 5.54478e4, где я бы предпочел, чтобы она показала смещение +55447 (целое число, без десятичной дроби - значение здесь указывается в днях).
Я пробовал пару вещей, как это:
p = axes.plot(x,y)
p.ticklabel_format(style='plain')
для оси х, но это не работает, хотя я, вероятно, использую это неправильно или неправильно истолковываю что-то из документов, может кто-то указать мне правильное направление?
Спасибо Джонатан
Я пытался что-то делать с форматерами, но пока не нашел решения ...:
myyfmt = ScalarFormatter(useOffset=True)
myyfmt._set_offset(1e9)
axes.get_yaxis().set_major_formatter(myyfmt)
а также
myxfmt = ScalarFormatter(useOffset=True)
myxfmt.set_portlimits((-9,5))
axes.get_xaxis().set_major_formatter(myxfmt)
С другой стороны, я на самом деле не понимаю, где на самом деле находится объект 'число смещения' ... является ли он частью основных / второстепенных тиков?