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 で軸ラベルの位置を調整する方法