ホームページ >バックエンド開発 >Python チュートリアル >複数の Matplotlib サブプロット間で単一のカラーバーを共有するにはどうすればよいですか?
Matplotlib で複数のサブプロットのカラーバーを共有する
Matplotlib で複数のサブプロットを作成する場合、すべてのサブプロットに共通のカラーバーを表示することが望ましい場合があります。プロットを作成し、一貫したカラー スキームと参照を確保します。これは、異なるサブプロット間で値とパターンを比較する場合に特に役立ちます。
ジレンマ
カラーバーを共有するときによくある問題の 1 つは、個々のカラーバーの自己相関です。サブプロットの境界ボックス内にプロットとカラーバーの両方が収まるようにサイズを変更します。これにより、サブプロットのサイズが不均等になり、一貫性がなくなってしまう可能性があります。
解決策: カラーバーの分離
この問題の解決策は、カラーバー専用の別の軸を作成することです。この軸は、プロットとは独立してカラーバーを表示するために使用され、そのサイズと位置をより詳細に制御できるようになります。
このアプローチを実装するには、次の手順に従います。
これはこのアプローチを示すコード例:
import numpy as np import matplotlib.pyplot as plt fig, axes = plt.subplots(nrows=2, ncols=2) for ax in axes.flat: im = ax.imshow(np.random.random((10,10)), vmin=0, vmax=1) fig.subplots_adjust(right=0.8) cbar_ax = fig.add_axes([0.85, 0.15, 0.05, 0.7]) fig.colorbar(im, cax=cbar_ax) plt.show()
このコードは、添付の画像に示すように、4 つのサブプロットを作成し、サブプロットの右側に 1 つのカラーバーを配置します。カラーバーはサブプロットと配色を共有し、そのサイズと位置はサブプロットから独立しています。
これらの手順に従うことで、複数のサブプロット間で単一のカラーバーを効果的に共有することができ、一貫性を確保し、データのプレゼンテーション
以上が複数の Matplotlib サブプロット間で単一のカラーバーを共有するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。