2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Pythonで学び直す数学【関数とグラフ/微分と積分編】~Matplotlibを使ってグラフを描画してみよう

Last updated at Posted at 2021-12-08

仕事や趣味でPythonのコードを書いている方であれば、「JupyterNotebookを使ってグラフを描画」といってピンとくる方も多いと思いますが、実際に興味はあるけれど、どう使ってみればよいのかわからないという方も多いと思います。Pythonのライブラリの基本的な書き方を含め、学生時代に習った数学の問題を通して、グラフを描画するという形で演習をしていきたいと思います。

「数学的な問題をPythonで簡単なスクリプトを作って動作を確認する」こと通して、Pythonに触れる機会をつくっていきたいと考えています。Pythonに慣れるという点でも手を動かして考える機会にして頂ければ幸いです。

今回は、Pythonで学び直す数学【関数とグラフ・微分積分編】の確認をしていきたいと思います。
演習問題のダウンロードはこちらから

image.png
数学の授業で、方程式を習った際に、方眼紙を用いて作図をした、という方もいらっしゃるかもしれません。Pythonでは「matplotlib」というライブラリでグラフや図形を描画することができます。

実際に、今回のテーマである「関数とグラフ/微分積分」について、以下の例題のPythonのコードを考えていきます。
image.png
それでは、「Maplotlibでグラフを描画」する方法からみていきましょう。

Matplotlibとは

Matplotlibとは、Pythonで主に2次元のグラフを描画するためのライブラリのこと。

Matplotlibを利用するには、以下のようにインポートを行います。Asキーワードを使用してpltで呼び出せるようにします。

In
image.png
まずは折れ線グラフの書き方から
image.png
上図の折れ線グラフは以下のコードを記述することで表現できます。

In
image.png
x座標とy座標を与えてplot関数に引数として渡すことで、折れ線グラフを描画することができるのですね。

(x, y)が1つあれば点を描画でき、もう1つ(x2, y2) あれば、2点を結ぶ直線ができ、
細かく座標を取っていけば、関数のグラフも描画できる、といった具合に応用して考えることができます。

image.png
以下のような一次方程式のグラフを描画する例を考えてみましょう。

image.png
Xを1~10の整数値で取得する方法として、range関数を利用することで開始値から終了までの連続した値を要素を生成します。

image.png

y = 3x – 15 のグラフ を描くには、上のようにxの値(リスト)を取得し、それに対応するyの値(リスト)をplot関数に引数として渡します。
image.png
また、配列や行列を効率よく扱うことができるパッケージである「numpy」 をインポートしてから利用することで、より簡易的に直線の方程式を「yにxを代入する式」として記述することができます。

xを1~10の整数値で取得する方法として、arange関数を利用することで開始値から終了までの連続した値を要素を生成します。
image.png

⇒ ここで類題として、添付資料「直交する直線」シートにある演習問題を解いてみましょう

image.png

連立方程式

Pythonのライブラリを使った連立方程式の解き方をみていきましょう。
具体的には、SymPyの中からSymbolクラスのオブジェクトを生成して、solve関数を実行して求めます。
例をみていきましょう。
image.png
image.png
⇒ ここで類題として、添付資料「2直線の交点」シートにある演習問題を解いてみましょう

image.png

matplotlibを使って、関数とグラフを描画する方法とPythonのライブラリを利用して直線の交点を求める方法について紹介しました。

これまでの知識をもとに、方程式のグラフを描画する以下の演習を解いてみましょう。

関数と導関数

image.png

接線を描画

image.png

定積分

image.png


以前学校で学んできた内容をもとにPythonでスクリプトを実行しながら確認できるのは面白いなと感じる方もいらっしゃるかもしれません。自分にできる範囲のものから少しずつPythonにも挑戦してみようかなと思っていただければ幸いです。

以上となります。

参考文献:
・谷尻かおり『文系プログラマーのためのPythonで学び直す高校数学』日経BP社(2021年)

2
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?