Maison >développement back-end >Tutoriel Python >Comment supprimer le décalage relatif dans les graduations de l'axe Matplotlib ?

Comment supprimer le décalage relatif dans les graduations de l'axe Matplotlib ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-24 06:25:02998parcourir

How to Remove Relative Shift in Matplotlib Axis Tick Marks?

Suppression du décalage relatif dans l'axe Matplotlib

Lors du tracé sur une plage de grands nombres, Matplotlib introduit un décalage relatif pour les graduations. Cela peut être observé lorsque les données s'étendent sur des ordres de grandeur, ce qui entraîne des graduations telles que 0,0 0,5 1,0 1,5 2,0n 1e3.

Pour éviter ce décalage et afficher des valeurs absolues pour les graduations, les étapes suivantes peuvent être suivies :

<code class="python">plot([1000, 1001, 1002], [1, 2, 3])
gca().get_xaxis().get_major_formatter().set_useOffset(False)
draw()</code>

Cela implique d'accéder à l'objet axes actuel, puis de récupérer l'objet axe x et son objet formateur majeur. En définissant useOffset sur False, le décalage relatif est désactivé, ce qui entraîne des valeurs de tick absolues : 1000.0 1000.5 1001.0 1001.5 1002.0.

Dans les versions plus récentes de Matplotlib (1.4), le comportement par défaut peut être modifié via axes.formatter .useoffset rcparam. Cela élimine le besoin de code explicite pour ajuster les paramètres.

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