グラフを表示する 【matplotlib & Python】

Python

できるだけシンプルに、Python でグラフを表示するスクリプトについてまとめておきます。

以下の環境で動作確認をしています。
環境: Windows 10、Python 3.X (numpy と matplotlib をインストール済み)(+ Anaconda)

背景

Python を使って、基本的な関数・グラフを表示するスクリプトについてまとめておきます。
コピー&ペーストすれば、すぐに動くよう意図しています。
うまく動いたら、数字や関数を変えて流用してください。

サンプル1: sin, cos 関数を表示するサンプルコード

import numpy as np1
import matplotlib.pyplot as plt1 

x1 = np1.arange( -np1.pi, np1.pi, 0.01 )  # -pi to +pi

plt1.plot( x1, np1.sin( x1 ) )
plt1.plot( x1, np1.cos( x1 ) )

plt1.ylim( -1.1, 1.1 ) 
plt1.title( 'sin, cos' )
plt1.xlabel( 'x' )
plt1.ylabel( 'y' )

plt1.show()

1つめは、sin, cos 関数を表示させるサンプルコードです。numpy を np1 という名前で定義して呼び出し、横軸を -π (-3.14159..)から +π (+3.14159..) の範囲で定義しています。さらに、numpy で定義されている sin, cos 関数を呼び出しています。
後半は、グラフ描画用の matplotlib (plt1)を呼び出して、縦軸 y の範囲を設定し、グラフタイトル、x 軸、y 軸のラベルを設定し、最後に show() を実行することで描画しています。

サンプル2: step, ReLU, sigmoid 関数を表示するサンプルコード

import numpy as np1
import matplotlib.pyplot as plt1 

def step( x1 ): 
    return ( x1 >= 0.0 ) * 1.0 

def relu( x1 ): 
    return ( x1 >= 0.0 ) * x1 

def sigmoid( x1 ): 
    return 1.0/(1.0 + np1.exp( -x1 ))

x1 = np1.arange( -4.0, 4.0, 0.01 ) 
print( x1 ) 

y1 = step( x1 ) 
y2 = relu( x1 ) 
y3 = sigmoid( x1 ) 

plt1.plot( x1, y1, 'r' )
plt1.plot( x1, y2, 'g--' )
plt1.plot( x1, y3, 'b:') 

plt1.ylim( -0.1, 2.1 )
plt1.title( "step, relu, sigmoid" )
plt1.xlabel( 'x' )
plt1.ylabel( 'y' )

plt1.show()

 

2つめは、機械学習で必須となる step, ReLU, sigmoid 関数を表示させるサンプルコードです。
こちらでは少しやり方を変えて、それぞれ関数で定義しています。サンプルコードの後半は、red, green, blue の色を付けて、かつ、点線の設定等をして、最後に描画しています。

まとめ

Python で、極力最小限&最短でグラフを描画する方法についてまとめました。
コピー&ペーストしてすぐに動くよう意図しています。

なお、matplotlib のグラフ以外にも、Python を使って、HTML、表、図形を出力する方法についてまとめています。matplotlib を使わずに、自由曲線を使ってサインカーブなどを HTML で描画して出力することも可能です。
もしも関心のある方は、関連リンクも参考にしてみてください。

関連リンク
・ テーブル(表)を表示するサンプルコード 【Python & tkinter】
・ HTML のグラフを出力する 【Python】
・ Python で自由曲線を描く 【HTML & SVG】
・ Python で円周率を求める
・ WordPress で数式を扱う 【LaTeX】

タイトルとURLをコピーしました