どん底から這い上がるまでの記録

どん底から這い上がりたいけど這い上がれない人がいろいろ書くブログ(主にプログラミング)

matplotlib入門

matplotlibについて勉強したのでその記録。

matplotlibの使い方の流れについて簡単に書いています。

 

基本的な使い方

matplotlibの基本的な使い方を簡単な例を通してやってみる。

ライブラリのインポート

matplotlibは使う場所によってインポートする方法が少し異なる。

コマンドプロンプトなどで実行するとき

import matplotlib.pyplot as plt

Jupyter Notebookで使う場合

import matplotlib.pyplot as plt
%matplotlib inline

データの用意

試しにsin波を描画してみる。

import numpy as np

# データの用意
x = np.arange(0, 10, 0.1)
y = np.sin(x)

sin波をつくるためにnumpyを使います。

arange()を使って等差数列を用意しています。xの中身は0.1きざみで0で始まり10で終わる配列になっています。

さらに、numpyには三角関数を求める関数が用意されているのでそれを使います。

グラフの描画

グラフを描画するにはplot()を使います。

matplotlib.pyplot.plot(*args, **kwargs)

# グラフの描画
plt.plot(x, y)

plot()の第一引数はx軸、第二引数はy軸になります。

グラフの表示

※Jupyter Notebookを使っている場合はplot()した時点でグラフが表示されます。

show()を使ってグラフを表示します。

# グラフの表示
plt.show()

f:id:pytry3g:20180808065028p:plain

※上のグラフはなめらかな曲線で描かれていますがplot()はデフォルトでは折れ線グラフです。x軸の値が0.1きざみなのでなめらかにできているだけです。

グラフの保存

グラフを画像で保存するには2通りの方法があります。

方法①

グラフを表示したとき上のメニューにある下のボタンを押す。

f:id:pytry3g:20180808070646p:plain

方法②

この方法だとグラフを表示せずに画像を保存します。

まずmatplotlib.pyplotをインポートする前に以下のコードを入れる。

import matplotlib
matplotlib.use('Agg')

最後に、savefig()でファイル名を指定して画像を保存する。

# グラフの保存
plt.savefig("sin.png")

ソースコード

ただグラフを表示するだけ

import matplotlib.pyplot as plt
import numpy as np

# データの用意
x = np.arange(0, 10, 0.1)
y = np.sin(x)

# グラフの描画
plt.plot(x, y)

# グラフの表示
plt.show()

グラフを表示せずに画像を保存

import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
import numpy as np

# データの用意
x = np.arange(0, 10, 0.1)
y = np.sin(x)

# グラフの描画
plt.plot(x, y)

# グラフの表示
plt.show()

# グラフの保存
plt.savefig("sin.png")