matplotlib

【matplotlib】凡例の列数を変更する【Python】

MAX

matplotlibでグラフを作成している時に、凡例の数が多い場合、適切な位置で改行したりしてほしい時がある。

改行位置を指定することはできないが、凡例の表示列数を指定することは可能。

スポンサーリンク

サンプルデータ読み込み

seabornのtitanicをサンプルとして使用する。

1import numpy as np
2import pandas as pd
3
4import matplotlib.pyplot as plt
5import japanize_matplotlib
6import seaborn as sns
7
8%matplotlib inline
9
10df_titanic = sns.load_dataset("titanic")

凡例の列数変更

plt.legend()のncolに列数を指定することで、凡例が指定した列数になる。

デフォルトではncol=1のため、未設定の場合は凡例は1列で表示される。

1# グラフのサイズ、背景色設定
2plt.figure(figsize=(6, 4), facecolor="w")
3# 棒グラフ作成
4sns.barplot(data=df_titanic, x="pclass", y="survived", hue="sex")
5# レジェンドの設定
6plt.legend(ncol=2)
7# グラフタイトル設定
8plt.title(f"legend_ncol_2")
9plt.tight_layout()
10plt.show()

色々な凡例の設定

凡例の表示位置変更

凡例の表示位置をグラフ内の上下左右やグラフ外の右側に表示したい場合は、こちらの記事を参照。

【matplotlib】グラフの凡例の位置を変更する【seaborn】
【matplotlib】グラフの凡例の位置を変更する【seaborn】

凡例のフォントサイズを変更

【matplotlib】グラフの凡例のフォントサイズを変更する
【matplotlib】グラフの凡例のフォントサイズを変更する

凡例のハンドラーのサイズを変更

【matplotlib】凡例のハンドラーのサイズを変更する【Python】
【matplotlib】凡例のハンドラーのサイズを変更する【Python】

凡例の余白を少なくする

【matplotlib】凡例の余白を少なくする【Python】
【matplotlib】凡例の余白を少なくする【Python】

凡例タイトルの大きさを変更

【matplotlib】凡例タイトルの大きさを変更する【Python】
【matplotlib】凡例タイトルの大きさを変更する【Python】

FontPropertiesを使用した凡例タイトルの設定

【matplotlib】FontPropertiesを使用した凡例タイトルの設定【Python】
【matplotlib】FontPropertiesを使用した凡例タイトルの設定【Python】

スポンサーリンク
ABOUT ME
MAX
MAX
ITエンジニア、データサイエンティスト
新卒でSIerに入社し、フリーランスになってWEB系へ転向。
その後AIの世界へ足を踏み入れ、正社員に戻る。 テーブルデータの分析がメイン。
スポンサーリンク
記事URLをコピーしました