Справедливо. Ошибка состоит в следующем: self.format = '$% s $'% ticker._mathdefault (self.format) AttributeError: у объекта 'module' нет атрибута '_mathdefault'

аюсь зафиксировать оси в научных обозначениях двух разных наборов данных, где один - [1-9] x1e-3, а другой - [1-9] x1e-4. Я хотел бы установить обе оси на 10 ^ -4 и иметь одну цифру после десятичной дроби (например,% .1e). Вот простая версия, с которой я попытался поиграть: я хотел бы, чтобы числа на осях были по крайней мере 1, и я хочу, чтобы обе силы были одинаковыми.

import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(1,9,9)
y1 = x*10**(-4)
y2 = x*10**(-3)

fig, ax = plt.subplots(2,1,sharex=True)

ax[0].plot(x,y1)
ax[0].ticklabel_format(axis='y', style='sci', scilimits=(-4,-4))
ax[0].yaxis.major.formatter._useMathText = True
ax[1].plot(x,y2)
ax[1].ticklabel_format(axis='y', style='sci', scilimits=(-4,-4))
ax[1].yaxis.major.formatter._useMathText = True

plt.show()

Ответы на вопрос(1)

Ваш ответ на вопрос