matplotlib でグラフを作成する際、凡例(legend)はデータの説明に役立ちますが、場合によっては不要なこともあります。この記事では、matplotlib の凡例を消す方法について詳しく解説します。
凡例全体を消したいわけではなく、凡例の枠を消したい場合には次の記事を参照してください。
あわせて読みたい


凡例の枠を消す・透明にする・スタイルを変更する方法 [matplotlib]
matplotlib でグラフを作成する際、凡例(legend)に枠がついていることがあります。この枠を取り除いたり、スタイルを変更したりする方法について解説します。 1. 凡例…
目次
legend()
を使わない
通常、plt.legend()
または ax.legend()
を呼び出すことで凡例が表示されます。したがって、そもそも legend()
を使用しなければ凡例は表示されません。
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
y = np.sin(x)
plt.plot(x, y, label="sin(x)") # ラベルを設定
# plt.legend() を呼ばなければ凡例は表示されない
plt.show()

legend().remove()
を使う
既に凡例を表示している場合、ax.get_legend().remove()
を使うことで削除できます。
fig, ax = plt.subplots()
ax.plot(x, y, label="sin(x)")
legend = ax.legend() # 凡例を表示
legend.remove() # 凡例を削除
plt.show()
set_visible(False)
を使う
凡例のオブジェクトを取得し、set_visible(False)
を使うことで非表示にできます。
fig, ax = plt.subplots()
ax.plot(x, y, label="sin(x)")
legend = ax.legend()
legend.set_visible(False) # 凡例を非表示にする
plt.show()
label
を指定しない
label
を指定しなければ凡例に表示される項目がなくなり、legend()
を実行しても凡例は表示されません。
plt.plot(x, y) # label を設定しない
plt.legend() # 凡例に表示するデータがないため、何も表示されない
plt.show()
まとめ
Matplotlib で凡例を消す方法はいくつかあります。
legend()
を呼び出さないlegend().remove()
を使うset_visible(False)
を使うlabel
を指定しない
使用する場面に応じて適切な方法を選びましょう。