Il ne s'agit pas tant d'une réponse à votre question initiale que d'une réponse à l'une des questions que vous avez posées dans le corps de votre question.
Un petit préambule, pour que mon appellation ne paraisse pas étrange :
import matplotlib
from matplotlib import rc
from matplotlib.figure import Figure
ax = self.figure.add_subplot( 111 )
Comme cela a été mentionné, vous pouvez utiliser ticklabel_format pour spécifier que matplotlib doit utiliser la notation scientifique pour les grandes ou petites valeurs :
ax.ticklabel_format(style='sci',scilimits=(-3,4),axis='both')
Vous pouvez affecter la manière dont cela est affiché en utilisant les drapeaux dans rcParams (from matplotlib import rcParams) ou en les définissant directement. Je n'ai pas trouvé de moyen plus élégant de passer de la notation scientifique '1e' à 'x10^' :
ax.xaxis.major.formatter._useMathText = True
Cela devrait vous donner un aspect plus Matlab-esc, et en fait une meilleure apparence. Je pense que ce qui suit devrait faire la même chose :
rc('text', usetex=True)