【Python】NumPyとMatplotlibを使えばたった4行でグラフを描画できる!

  • 2018年8月9日
  • 2020年4月29日
  • Python
Pythonを独学で学びたい方は、UdemyのPythonコースがおすすめです。シリコンバレーの一流エンジニアが約300の動画を使って、Pythonを網羅的に教えてくれます。プログラミングスクールの10分の1以下の値段で学べるので、コスパも良しです。
※さらに30日間返金保証ありなので、実質リスクゼロ。
Python 3 入門 + 応用 +アメリカのシリコンバレー流コードスタイル

 

 

今回は最近非常に人気のあるプログラミング言語、Pythonを使ってグラフを描画していこうと思います。

 

スポンサーリンク

 必要な準備(必要なライブラリ)

 

 

グラフを描画していくために、まず2つのライブラリをインポートしていきます。NumpyとMatplotlibというライブラリです。以下に軽く2つのライブラリの説明を書いていきます。

 

 NumPy

Pythonを使う際に、様々な数値計算を効率的に行うために演算機能を提供してくれるライブラリです。特に、ベクトルや行列などの多次元のデータを扱うのに優れており、近年では機械学習などでもよく使われています。

 

スポンサーリンク

 Matplotlib

Pythonや上述した、NumPyのためのグラフ描画を行ってくれるライブラリです。

 

 実際にグラフを描画してみよう!

それではグラフを描画していきましょう。順序立てて説明していきます。

 

スポンサーリンク

 NumPyとMatplotlibをインポートする

%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np

まず、NumPyとMatplotlibをインポートしていきましょう。上のようにしてあげて、エラーが出なければインポートできています。1行目の%matplotlib inlineはjupyter notebook上で実行している人は必要な1行です。この1行を書くことによって、ノートブック上でグラフを描画できるようになります。

2行目、3行目ではmatplotlib.pyplotとnumpyをそれぞれ、plt、npという名前でインポートしています。

 

スポンサーリンク

 データを作成する

x = np.arange(0, 7, 0.1)
y = np.sin(x)

まずは1行目を見てください。NumPyのarange()メソッドによってx方向にデータを生成していきます。このメソッドでは第1引数から第2引数まで第3引数ごとにデータを生成していきます。つまり、上の例では0から7まで0.1ごとにデータを生成していくということです。

2行目ではNumPyのsin()メソッドを使うことによって1行目で確保したデータに対するsin関数の値を生成していきます。

 

 グラフを描画する

plt.plot(x, y)
plt.show()

最後にMatplotlibを使ってグラフを描画していきます。1行目ではplot()メソッドによって上で生成した(x,y)のデータ列を受け取り、グラフを描画します。最後にshow()メソッドを使ってグラフを表示します。

 

スポンサーリンク

 Matplotlibによる他の描画の例

上の例の他にもNumpyでのデータの生成の仕方を少し変えるだけで色々なグラフを描画することができます。

 

3次関数

x = np.arange(-2, 2, 0.1)
y = x**3
plt.plot(x,y)
plt.show()

 

スポンサーリンク

指数関数

x = np.arange(-2, 2, 0.1)
y = np.exp(x)
plt.plot(x,y)
plt.show()

 

 まとめ

今回の内容はPythonを使ってグラフを描画していくというものでしたが、コード量も少ないですし、案外すぐに実行できると思います。是非、関数の形を変えて自分でも実際に実行してみてください。

他にも以下の記事ではTkinterの基礎についてざっくり理解し、図形描画などをすることができます。参考にしてみてください。

 

【Python】Tkinterで誰でも簡単に図形を描画できる! (Canvas上への図形描画)

 

 

今後も定期的にプログラミング系の記事を発信していくので、興味のある人はブックマークして見にきてくれると嬉しいです!!

 

 

Pythonを独学で学びたい方は、UdemyのPythonコースがおすすめです。シリコンバレーの一流エンジニアが約300の動画を使って、Pythonを網羅的に教えてくれます。プログラミングスクールの10分の1以下の値段で学べるので、コスパも良しです。
※さらに30日間返金保証ありなので、実質リスクゼロ。
Python 3 入門 + 応用 +アメリカのシリコンバレー流コードスタイル
スポンサーリンク