matplotlib基礎
はじめに
matplotlibでグラフを書きます。
図を描いてみる
import matplotlib.pyplot as plt plt.style.use('seaborn-whitegrid') import numpy as np %matplotlib inline # numpy.linspace(start, stop, num = 50, endpoint = True, retstep = False, dtype = None) # num: 生成する配列(ndarray)の要素数を指定。 # endpoint: 生成する数列において、stopを要素に含むかどうかを指定。Trueなら含み、Falseなら含まない。 # retstep: 生成された配列(ndarray)の後に公差を表示するかどうかを指定。Trueなら表示し、Falseなら非表示。 # dtype: 出力された配列(ndarray)のデータ型を指定。指定がない場合、データ型はfloat。 x = np.linspace(0, 10, 1000) print(x) print(type(x)) # figureの縦横の大きさ fig = plt.figure() # figure内の枠の大きさとどこに配置している。subplot(行の数,列の数,何番目に配置しているか) ax = plt.axes() plt.plot(x, np.sin(x)) plt.plot(x, np.cos(x))
[ 0. 0.01001001 0.02002002 0.03003003 0.04004004 0.05005005 0.06006006 0.07007007 0.08008008 0.09009009 0.1001001 0.11011011 ・・・ 9.90990991 9.91991992 9.92992993 9.93993994 9.94994995 9.95995996 9.96996997 9.97997998 9.98998999 10. ] <class 'numpy.ndarray'>
複数の図を描いてみる
matplotlib.pyplot.subplotを使って規則正しくグラフを書きます。
2×2で4枚のグラフを描きます。
プロット番号は、左上が 1 で、右方向、下方向へいくにしたがい値が大きくなります。 たとえば、2 × 2 のグリッドの場合は
1 2
3 4
となります。
%matplotlib inline import matplotlib.pyplot as plt plt.style.use('seaborn-whitegrid') import numpy as np x = np.linspace(-3, 3, 20) y1 = x y2 = x ** 2 y3 = x ** 3 y4 = x ** 4 fig = plt.figure() # 左上 plt.subplot(2,2,1) plt.plot(x,y1) # 右上 plt.subplot(2,2,2) plt.plot(x, y2) # 左下 plt.subplot(2,2,3) plt.plot(x,y3) # 右下 plt.subplot(2,2,4) plt.plot(x,y4)
matplotlib.pyplot.subplot
グリッド上に規則正しくグラフを配置する場合はsubplotメソッドを使います。
フォーマット
subplot(行数, 列数, プロット番号)
行数 × 列数 のグリッドに figure が分割され、プロット番号の位置に座標軸が作成されます。
np.linspace
NumPyのnp.linspaceは、線形に等間隔な数列を生成する関数です。
同様の数列をnp.arangeで生成することもできますが、np.linspaceを使用したほうがコード量を減らすことができます。
numpy.linspace(start, stop, num = 50, endpoint = True, retstep = False, dtype = None)
params:
パラメータ名 | 型 | 概要 |
---|---|---|
start | intまたはfloat | 数列の始点を指定します。 |
stop | intまたはfloat | 数列の終点を指定します。 |
num | int | (省略可能)初期値50 生成する配列(ndarray)の要素数を指定します。 |
endpoint | bool値 | (省略可能)初期値True 生成する数列において、stopを要素に含むかどうか指定します。Trueなら含み、Falseなら含みません。 |
retstep | boo値 | (省略可能)初期値False 生成された配列(ndarray)の後に公差を表示するかどうか指定します。Trueなら表示し、Falseなら非表示です。 |
dtype | dtype | (省略可能)初期値None 出力された配列(ndarray)のデータ型を指定します。dtypeが指定されない場合、データ型は基本的にはfloatになっている。 |
returns:
num等分された等差数列を要素とするndarrayが返されます。