ホームページ  >  記事  >  バックエンド開発  >  Matplotlib 軸ラベルの相対的なシフトを排除するにはどうすればよいですか?

Matplotlib 軸ラベルの相対的なシフトを排除するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-10-24 07:15:30994ブラウズ

How to Eliminate Relative Shift in Matplotlib Axis Labels?

Matplotlib 軸の相対シフトの除去

大きな数値を含むデータをプロットする場合、相対シフトのある軸が発生することがよくあり、その結果、小数成分を伴うティックが発生します。マグニチュードインジケーター (例: 「1e3」)。これは、特に小さいデータセットを扱う場合、直感的ではない可能性があります。

この問題を解決するために、Matplotlib は、x 軸で主要なフォーマッタ オブジェクトを構成することを含む簡単な解決策を提供します。

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

useOffset を False に設定すると、フォーマッタは相対的なシフトなしで目盛値を表示するように指示されます。これにより、次のコードに示すように、軸ラベルがよりきれいになります:

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

このコードは、次のような目盛り値を持つ軸を生成します:

1000.0  1000.5  1001.0  1001.5  1002.0

あるいは、より新しいバージョンでは、 Matplotlib (1.4) のデフォルトの動作は、axes.formatter.useoffset rcparam:

rcParams['axes.formatter.useoffset'] = False
を介してグローバルに変更できます。

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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。