ホームページ > バックエンド開発 > Python チュートリアル > 大きな数値に対する Matplotlib の目盛りラベルの相対的なシフトを排除するにはどうすればよいですか?

大きな数値に対する Matplotlib の目盛りラベルの相対的なシフトを排除するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-10-24 06:58:30
オリジナル
923 人が閲覧しました

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

Matplotlib 軸の相対シフトの削除

Matplotlib で大きな数値に対してプロットすると、軸に目盛りラベルの相対シフトが生じる可能性があります。説明のために、次のプロットを考えてみましょう。

plot([1000, 1001, 1002], [1, 2, 3])
ログイン後にコピー

これにより、次のように横軸に目盛りが生成されます。

0.0     0.5     1.0     1.5     2.0
+1e3
ログイン後にコピー

「 1e3」ラベルを削除し、次の形式の目盛りラベルを取得するには「1000.0」、「1001.0」などの場合は、次の手順に従います。

  1. gca() を使用して現在の軸を取得します。
  2. get_xaxis() を使用して x 軸軸オブジェクトを取得します。 .
  3. get_major_formatter() を使用してメジャー フォーマッタ オブジェクトを取得します。
  4. set_useOffset(False) を使用してフォーマッタの useOffset 属性を False に設定します。
  5. draw() を呼び出して更新します

あるいは、新しいバージョンの Matplotlib (1.4 ) では、axes.formatter.useoffset rcparam:

matplotlib.rcParams['axes.formatter.useoffset'] = False
ログイン後にコピー

これらを適用することで、デフォルトの動作を変更できます。メソッドを使用すると、軸の相対的なシフトを削除し、目的の形式で目盛りラベルを取得できます。

以上が大きな数値に対する Matplotlib の目盛りラベルの相対的なシフトを排除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート