【matplotlib】軸の単位をカスタマイズして科学記数法以外に設定する
MAX
MAX999blog
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()
凡例の表示位置をグラフ内の上下左右やグラフ外の右側に表示したい場合は、こちらの記事を参照。