Matplotlib20本ノック
7,対数軸
下記のグラフにおいて、軸のスケールをlog(対数関数)に調整してみてください。
x = np.linspace(0,10,500)
y = np.exp(x)
まずは問題通りグラフを表示してみます。
x = np.linspace(0,10,500)
y = np.exp(x)
plt.plot(x,y)
[<matplotlib.lines.Line2D at 0x286a67aaf70>]
この問題については指数関数と対数関数について理解していないと
いけないとのこと。
今西先生もそれほど実務で使う事もなかなか無いそうで
頭の片隅においておけばいいかなぁと勝手に思って
スルーしようと思います(笑)
とりあえずlogで対数化数とやらのグラフを作成します。
plt.yscale('log')
plt.plot(x,y)
[<matplotlib.lines.Line2D at 0x286a6926490>]
8,凡例
以下のコードを実行したグラフに対し、sin,cosという凡例をつけたグラフを作成してください。
x = np.linspace(0,2*np.pi,500)
y1 = np.sin(x)
y2 = np.cos(x)
plt.plot(x,y1)
plt.plot(x,y2)
plt.ylim(-2,2)
まずはグラフを表示してみます。
x = np.linspace(0,2*np.pi,500)
y1 = np.sin(x)
y2 = np.cos(x)
plt.plot(x,y1)
plt.plot(x,y2)
plt.ylim(-2,2)
凡例の作り方は引数にlabel=というものがあるので
そちらで指定します。
指定した上でplt.legend()とすると凡例を表示させる事ができます。
表示させる場所についてはlegendの引数にloc=で指定できます。
引数の値と表示させる位置に関してはこちらの図となります。
x = np.linspace(0,2*np.pi,500)
y1 = np.sin(x)
y2 = np.cos(x)
plt.plot(x,y1, label='sin')
plt.plot(x,y2, label='cos')
plt.ylim(-2,2)
plt.legend(loc=2)
コメント