Maison >développement back-end >Tutoriel Python >Comment éliminer le décalage relatif dans les étiquettes de coches de Matplotlib pour les grands nombres ?

Comment éliminer le décalage relatif dans les étiquettes de coches de Matplotlib pour les grands nombres ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-24 06:58:30907parcourir

How to Eliminate Relative Shift in Matplotlib's Tick Labels for Large Numbers?

Suppression du décalage relatif dans l'axe Matplotlib

Le traçage par rapport à de grands nombres dans Matplotlib peut entraîner un axe avec un décalage relatif pour les étiquettes de graduation. Pour illustrer, considérons le tracé suivant :

plot([1000, 1001, 1002], [1, 2, 3])

Ceci génère des ticks sur l'axe des abscisses comme suit :

0.0     0.5     1.0     1.5     2.0
+1e3

Pour éliminer le label " 1e3 " et obtenir des labels de ticks de la forme "1000.0", "1001.0", etc., suivez ces étapes :

  1. Récupérez les axes actuels à l'aide de gca().
  2. Obtenez l'objet de l'axe des x à l'aide de get_xaxis() .
  3. Récupérez l'objet principal du formateur à l'aide de get_major_formatter().
  4. Définissez l'attribut useOffset du formateur sur False à l'aide de set_useOffset(False).
  5. Appelez draw() pour mettre à jour l'intrigue.

Alternativement, dans les versions plus récentes de Matplotlib (1.4), le comportement par défaut peut être modifié via le rcparam axes.formatter.useoffset :

matplotlib.rcParams['axes.formatter.useoffset'] = False

En appliquant ces méthodes, vous pouvez supprimer le décalage relatif dans l'axe et obtenir des étiquettes de graduation au format souhaité.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn