Pythonでグラフを描く

Pythonではmatplotlibモジュールを使うと、グラフを描きます。ここでは、matplotlibでグラフを描くときの基本となるメソッドについて説明します。

目次

  1. matplotlib.pyplot.plotメソッドの使い方
  2. グラフの作成例

matplotlib.pyplot.plotメソッドの使い方

plotメソッドでグラフ(線図)のインスタンスを作り、showメソッドで表示をします。

plot([x], y, [fmt])

変数

内容

x

array-like

省略可。グラフ中の点のx成分。省略した場合は、0〜N-1の整数。

y

array-like

グラフ中の点のy成分。

fmt

str

省略可。線の書式。

上記のパラメータは最低限のものです。

fmtの書式は下記です。

fmt = '[color][marker][line]'

colorの文字と指定内容の対応は下表のようになります。

文字

指定内容

b

青色

g

緑色

r

赤色

c

シアン色

m

マゼンタ色

y

黄色

k

黒色

w

白色

16進数での色指定もできるようです。

markerは沢山あります。

文字

指定内容

.

,

ドット

o

v

下向き三角

^

上向き三角

<

左向き三角

>

右向き三角

1

tri_down

2

tri_up

3

tri_left

4

tri_right

s

四角

p

五角

h

六角

H

六角

十字

x

バッテン

D

ダイヤ

d

細いダイヤ

縦線

_

横線

※ | (バーティカルライン)です。なぜか表中でエスケープできなかったので。

lineはあまり種類はありません。

文字

指定内容

--

破線

-.

一点鎖線

:

点線

※ -(ハイフン)です。これも表中でエスケープできなかったので。

グラフの作成例

何はさておき、試してみましょう。

下記の3つのグラフを1つの図に描いてみます。

y = sin(x)
y = cos(x)
y = tan(x)

まずは、プロットするデータを作ります。ここではNumPyを使います。

>>> import numpy as np
>>> x = np.linspace(0, 2*np.pi, 21)
>>> y1 = np.sin(x)
>>> y2 = np.cos(x)

これで共通のxの成分に対する各関数のyの成分を計算できました。

それでは、プロットしてみます。

>>>from matplotlib import pyplot as plt
>>> plt.plot(x, y1, 'b.-')
[<matplotlib.lines.Line2D object at 0x11f2946a0>]
>>> plt.plot(x, y2, 'g,-.')
[<matplotlib.lines.Line2D object at 0x118dd97f0>]
>>> plt.show()

MacやWindowsなんかだと、新しいウィンドウが開いてグラフが表示されます。Jupyter Notebookだとブックの中に表示されると思います。

グラフの表示結果

公開日

広告