物忘れが激しくて困る。
import matplotlib.pyplot as plt要はmatplotlib.pyplot.legend()関数内で色々設定する。決まった定型文のようなものをコンマで区切って入れていく。
plt.legend(loc='best', fancybox=True, shadow=True, ...)
以下、自分が使いそうな関連をまとめておく。
凡例の位置:
基本的にはloc='~'
と言った感じで作成。本家のページを探したらこんなのがあった。数字を入れてもいいし、loc='best'
のように書いてもいい。
Location String | Location Code |
---|---|
‘best’ | 0 |
‘upper right’ | 1 |
‘upper left’ | 2 |
‘lower left’ | 3 |
‘lower right’ | 4 |
‘right’ | 5 |
‘center left’ | 6 |
‘center right’ | 7 |
‘lower center’ | 8 |
‘upper center’ | 9 |
‘center’ | 10 |
どんな風にずれるかはプロットしながら調整すれば良いと思う。
凡例の表示方法:
numpoints=? :凡例に表示する点の数を指定する。デフォルトでは2になっているが、点同士を結ばない場合、2つ点が並んで違和感がでるのでよく使うとおもう。
ncol=?:
凡例の列数。デフォルトでは1。たまに使いたくなる。
mode=“expand”:
凡例をグラフの横いっぱいに広げるらしい。一度使ったことがある
fancybox=True:
凡例の角を丸くする。最初は違和感があったが、なんとなく見映えがいいような気がする
shadow=True:
凡例に影をつける。これも違和感があったが、かっこいい気がしてきた。
title='~'
凡例のタイトルを指定する
凡例を半透明にする
関数内でalpha=?としたらエラーが出た。この構文はpyplot.plotやpyplot.xlabelなどに対応しているがpyplot.legend関数には対応していないらしい。
そこで、今のところ、凡例を半透明にするには次のように書いている。
他に方法がないのかはそのうち調べるかも(たぶんしない)
leg = plt.legend('''色々指定する''')
leg.get_frame().set_alpha(0.5)
0 件のコメント:
コメントを投稿