J'essaie de fixer les axes à la notation scientifique de deux ensembles de données différents où l'un est [1-9] x1e-3 et l'autre est [1-9 ] x1e-4. Je voudrais définir les deux axes à 10^-4 et avoir les chiffres un après décimal (par exemple% .1e). Voici une version simple avec laquelle j'ai essayé de jouer: Je voudrais que les nombres sur les axes soient au moins 1 et je veux que les deux pouvoirs soient identiques.Définir la notation scientifique avec l'exposant fixe et les chiffres significatifs pour plusieurs sous-plans
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()
Cela fonctionne! Je me demandais juste si vous pouviez expliquer ce que chaque définition de la classe faisait et doit-elle être étendue pour fixer le nombre de sig figs, par exemple si je veux un après la virgule (par exemple 1.835 e-3 -> 18.3 e-4) @ImportanceOfBeingErnest – Gregory
J'ai édité la réponse pour inclure également le format. – ImportanceOfBeingErnest
Merci! J'ai accepté la réponse – Gregory