Matplotlib で凡例の位置を変更する方法


Matplotlib で凡例の位置を変更するには、 plt.legend()関数を使用できます。

たとえば、次の構文を使用して、凡例をプロットの左上隅に配置できます。

 plt. legend (loc=' upper left ')

デフォルトの場所は「最適」です。これは、Matplotlib がデータ ポイントのカバーを避ける場所に基づいて凡例の場所を自動的に見つける場所です。

ただし、次のキャプションの場所のいずれかを指定できます。

  • 右上
  • 左上隅に
  • 左下にある
  • 右下にある
  • 中央左
  • 中道右派
  • 中央下
  • 上部中央
  • 中心

bbox_to_anchor()引数を使用して、プロットの外側に凡例を配置することもできます。たとえば、次の構文を使用して、プロットの外側の右上隅に凡例を配置できます。

 plt. legend (bbox_to_anchor=( 1.05 , 1 ), loc=' upper left ', borderaxespad= 0 )

次の例は、これらの各メソッドを実際に使用する方法を示しています。

例 1: Matplotlib プロット内の凡例の位置を変更する

次のコードは、Matplotlib 折れ線グラフの右中央部分に凡例を配置する方法を示しています。

 import pandas as pd
import matplotlib. pyplot as plt

#createdata
df = pd. DataFrame ({' points ': [11, 17, 16, 18, 22, 25, 26, 24, 29],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4, 8]})

#add lines to plot
plt. plot (df[' points '], label=' Points ', color=' green ')
plt. plot (df[' assists '], label=' Assists ', color=' steelblue ')

#place legend in center right of plot
plt. legend (loc=' center right ', title=' Metric ') 

次のコードは、Matplotlib プロットの左上に凡例を配置する方法を示しています。

 import pandas as pd
import matplotlib. pyplot as plt

#create data
df = pd. DataFrame ({' points ': [11, 17, 16, 18, 22, 25, 26, 24, 29],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4, 8]})

#add lines to plot
plt. plot (df[' points '], label=' Points ', color=' green ')
plt. plot (df[' assists '], label=' Assists ', color=' steelblue ')

#place legend in center right of plot
plt. legend (loc=' upper left ', title=' Metric ') 

例 2: Matplotlib プロットの外側の凡例の位置を変更する

Matplotlib プロットの外側に凡例を配置するには、 bbox_to_anchor()引数を使用できます。

たとえば、凡例をプロットの右上隅の外側に配置する方法は次のとおりです。

 import pandas as pd
import matplotlib. pyplot as plt

#create data
df = pd. DataFrame ({' points ': [11, 17, 16, 18, 22, 25, 26, 24, 29],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4, 8]})

#add lines to plot
plt. plot (df[' points '], label=' Points ', color=' green ')
plt. plot (df[' assists '], label=' Assists ', color=' steelblue ')

#place legend in center right of plot
plt. legend (bbox_to_anchor=( 1.02 , 1 ), loc=' upper left ', borderaxespad= 0 )

凡例をプロットの右下隅の外側に配置する方法は次のとおりです。

 import pandas as pd
import matplotlib. pyplot as plt

#create data
df = pd. DataFrame ({' points ': [11, 17, 16, 18, 22, 25, 26, 24, 29],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4, 8]})

#add lines to plot
plt. plot (df[' points '], label=' Points ', color=' green ')
plt. plot (df[' assists '], label=' Assists ', color=' steelblue ')

#place legend in center right of plot
plt. legend (bbox_to_anchor=( 1.02 , 0.1 ), loc=' upper left ', borderaxespad= 0 ) 

bbox_to_anchor()引数の詳細な説明については、 matplotlib のドキュメントを参照してください。

追加リソース

次のチュートリアルでは、Matplotlib で他の一般的な操作を実行する方法を説明します。

Matplotlib で凡例のフォント サイズを変更する方法
Matplotlib の凡例にタイトルを追加する方法
Matplotlib でタイトルの位置を調整する方法
Matplotlib で軸ラベルの位置を調整する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です