一つを極める~matplotlib編part2~
こんにちは、今日も張り切っていきましょう。
今回のブログもmatplotlibのpyplotに含まれるplot関数についてより
深く見ていきたいと思います。
前回の復習です。
前回のおさらい
・pythonでグラフの描画→matplotlibのpyplot
・plot()でグラフをプロット
・show()でグラフの表示
・plot()の引数→・colorでグラフの色を変更
・linestyle(ls)でグラフの書式変更
・linewidth(lw)でグラフの太さを変更
でしたね。前回の見ていきたい人はこちらから。
ではいきましょうか。
今回の内容
凡例ならlabelとlegend ()のセット
グラフに凡例をつけてどのグラフか分かりやすく
するにはplot(label='名前')でつけることが可能です。
ただここで大事なのはlegend()という関数も呼ぶ必要
があります。
import numpy as np
import matplotlib.pyplot as plt
x=np.linspace(0,2*np.pi)
y_sin=np.sin(x)
y_cos=np.cos(x) plt.plot(x,y_sin,label='sin')
plt.plot(x,y_cos,label='cos')
plt.legend()
plt.show()
凡例が出てきました!!
凡例をつけるには必ずlabelとlegend()はセットです!!
つけないとどうなるのでしょうか?
y_sin=np.sin(x)
y_cos=np.cos(x)
plt.plot(x,y_sin,label='sin')
plt.plot(x,y_cos,label='cos')
plt.show()
やっぱりついてない!!
セットですよ〜〜
グラフの透過度指定→alpha
グラフを少し透過させたい時、
plot()のalpha引数で透過度を設定できます。
デフォルトは1.0でこんな感じです。
y_sin=np.sin(x)
plt.plot(x,y_sin,alpha=1.0,label='sin')
plt.legend()
plt.show()
alphaを0.5に設定してみましょう。
y_sin=np.sin(x)
plt.plot(x,y_sin,alpha=0.5,label='sin')
plt.legend()
plt.show()
若干薄くなっているのがわかりますね。
見た目を改善antialiased
この引数はグラフの見た目が良くなるような処理
をしてくれる優秀な引数なんです。
実はデフォルトでこの引数がTrueになっているので
あまり気にする必要もないですがちょっと比較
してみましょう。
まずはTrue(デフォルト)の時をみてみましょう
y_sin=np.sin(x)
plt.plot(x,y_sin,aa=True)
plt.show()
これをaa=Falseにすると・・
なんか粗いというかザラザラしてますね。
antialiasedで見た目がよくなるのですね。
プロットの形を変えるmarker
プロットの形を変更したい時plot()に
markerを指定することで変更できます。
y_sin=np.sin(x)
plt.plot(x,y_sin,marker='+')
plt.show()
y_sin=np.sin(x)
plt.plot(x,y_sin,marker='.')
plt.show()
参考文献・サイト
Matplotlib.pyplotのplotの全引数を解説 | 自調自考の旅
はじめてのディープラーニング -Pythonで学ぶニューラルネットワークとバックプロパゲーション- (Machine Learning)
- 作者:我妻 幸長
- 発売日: 2018/08/28
- メディア: 単行本