ホームページ >バックエンド開発 >Python チュートリアル >Matplotlib で軸の外側の凡例を収容するために図ボックスを拡張する方法は?
軸外の凡例の図ボックスの展開
凡例を軸の外に移動すると、多くの場合、図ボックスが小さすぎて、伝説のサイズ。軸の縮小は、プロット サイズが小さくなり、複雑なデータの解釈が困難になるため、理想的ではありません。
Figure Box の動的サイズ変更
この問題を解決するには、次のことが可能です。凡例に合わせて Figure ボックスのサイズを動的に調整します。これは、次の引数を使用して savefig() 呼び出しを変更することで実現できます:
コード例
次のコードを考えてみましょう:
<code class="python">import matplotlib.pyplot as plt import numpy as np # Construct a plot with a legend x = np.arange(-2*np.pi, 2*np.pi, 0.1) fig = plt.figure(1) ax = fig.add_subplot(111) ax.plot(x, np.sin(x), label='Sine') ax.plot(x, np.cos(x), label='Cosine') ax.plot(x, np.arctan(x), label='Inverse tan') lgd = ax.legend(loc=9, bbox_to_anchor=(0.5,0)) ax.grid('on') # Save the figure with the adjusted bounding box fig.savefig('samplefigure', bbox_extra_artists=(lgd,), bbox_inches='tight')</code>
出力
このコードは、軸の外側に凡例を含むプロットを作成し、凡例を収容するために Figure ボックスが拡張されます。 bbox_extra_artists 引数内にテキスト ラベルなどの追加のアーティストを含めることもできます。
簡略化されたコマンド
Matplotlib の最近のバージョンでは、コマンドが簡略化されました。 。厳密な境界ボックスを含む Figure を保存するには、次の引数のみが必要です:
<code class="python">plt.savefig('x.png', bbox_inches='tight')</code>
以上がMatplotlib で軸の外側の凡例を収容するために図ボックスを拡張する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。