Seaborn でレジェンドの位置を変更する方法


海洋プロット内の凡例の位置を変更するには、 plt.legend()コマンドを使用できます。

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

 plt. legend (loc=' upper right ')

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

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

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

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

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

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

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

次のコードは、海洋散布図の右中央部分に凡例を配置する方法を示しています。

 import pandas as pd
import seaborn as sns
import matplotlib. pyplot as plt

#create fake data
df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B']})

#create scatterplot
sns. scatterplot (data=df, x=' points ', y=' assists ', hue=' team ')

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

次のコードは、海洋散布図の左上に凡例を配置する方法を示しています。

 #create scatterplot
sns. scatterplot (data=df, x=' points ', y=' assists ', hue=' team ')

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

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

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

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

 import pandas as pd
import seaborn as sns
import matplotlib. pyplot as plt

#create fake data
df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B']})

#create scatterplot
sns. scatterplot (data=df, x=' points ', y=' assists ', hue=' team ')

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

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

 #create scatterplot
sns. scatterplot (data=df, x=' points ', y=' assists ', hue=' team ')

#place legend outside bottom right corner of plot
plt. legend (bbox_to_anchor=( 1.02 , 0.15 ), loc=' upper left ', borderaxespad= 0 ) 

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

追加リソース

Seaborn プロットの図のサイズを調整する方法
Seaborn プロットの軸ラベルを変更する方法
Seaborn プロットで凡例のフォント サイズを変更する方法

コメントを追加する

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