白猫学生のブログ

自分の趣味をひたすら投稿するブログ

MatPlotLibの凡例を自動で最適の位置に設定する方法

MatPlotLibでグラフを作成した際,凡例がグラフと被ってしまうことが多々あります.そこで,凡例の位置を自動で調整できないかと調べてみたら思った以上に簡単にできましたので記事にしました.


サンプルコードは以下の通りです

import matplotlib.pyplot as plt

if __name__ == "__main__":
    plt.plot(range(10), range(10), color = "r", label = "label-1")
    plt.plot(range(10), range(1, 11), color = "b", label = "label-2")
    
    #場所指定を'best'にする
    plt.legend(loc = 'best')
    
    plt.show()


実行結果は以下の通りです

f:id:KevinArrow:20170227215411p:plain

ちなみに,凡例の場所指定をしないと以下のようになって被ってしまいます

f:id:KevinArrow:20170227215412p:plain