plt.legend()、たまに描画で見るやつ。
legend(伝説)という字面に引っ張られて、その存在は目を引くが、実際のところどんな役割を果たしてくれているのか、そもそも必要なのか、を知らない。この機会に、以下の内容をはっきりさせる。
- lengend()は必要なのか
- lengend()の役割
legend()は必要なのか
「サイン・コサイン・タンジェント」でおなじみの、サインとコサインの曲線を、legendあり・なしで描画してみる。
共通コード
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 2*np.pi)
y1 = np.sin(x)
y2 = np.cos(x)
plt.plot(x, y1, label="sin(x)")
plt.plot(x, y2, label="cos(x)")
legendあり
legendなし
legend()の役割
上の2つの結果の違いからわかるように、
legend()の役割は、凡例を表示する。
plt.legend()
としても、
plot(lengend=True)
としても、結果は同じ。
まとめ
今回は、2つの曲線を描くだけだったので、色の違いで区別はつくかもしれないが、データの種類が多くなると、色だけで区別をするのも大変。やはり、凡例が右上の方とかにあると、識別しやすい。
結論、legendは使うようにする。
参考サイト
Matplotlib plt.legend() | 凡例の位置とスタイル設定完璧ガイド! - YutaKaのPython教室