ぺーぱーの日々

上機嫌でいること、夢中でいることを目標に、今日も色んなことに手を出します。

MENU

legend()がいるのといないの

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なし

legendなし

legend()の役割

上の2つの結果の違いからわかるように、

legend()の役割は、凡例を表示する。

plt.legend()

としても、

plot(lengend=True)

としても、結果は同じ。

まとめ

今回は、2つの曲線を描くだけだったので、色の違いで区別はつくかもしれないが、データの種類が多くなると、色だけで区別をするのも大変。やはり、凡例が右上の方とかにあると、識別しやすい。

結論、legendは使うようにする。

参考サイト

Matplotlib plt.legend() | 凡例の位置とスタイル設定完璧ガイド! - YutaKaのPython教室