【Python】無理関数のグラフを図示

■無理関数

√(根号:ルート)の中に文字を含む式を無理式と呼び、
以下のように、y を x の無理式で表した関数を x の無理関数と呼ぶ。

▼y = √x

▼y = √-x

■例題

以下の2問についてグラフを図示する。

▼問題1

▼問題2

■サンプルコード

# -*- Coding:UTF-8 -*-
import numpy as np
import math
from matplotlib import pyplot as plt


def MakeGraph(a:int, p:int, q:int) -> None:
    ########## グラフにx軸,y軸(0)を図示 ##########
    # 補助線(0)を作成 [axhline:水平 axvline:垂直]
    plt.axhline(y = 0, color = "gray")
    plt.axvline(x = 0, color = "gray")
    ############################################

    ########## 無理関数をグラフに図示 ##########

    # xの値を0.01の間隔で設定するための変数
    xinterval = 0.01

    # aが0より大きい場合のxの範囲を指定
    if a > 0:
        xmin = p
        xmax = p + 5
        x = np.arange(xmin, xmax, xinterval)
    # aが0より小さい場合のxの範囲を指定
    elif a < 0:
        xmin = p - 5
        xmax = p + 0.01
        x = np.arange(xmin, xmax, xinterval)

    y =[]

    # yを算出
    for i in range(len(x)):
        y.append(math.sqrt(a * (x[i] - p)) + q)

    # グラフを作成
    plt.plot(x,y,color = "blue")

    ########################################


    # グラフを表示
    plt.show()


# メイン処理
if __name__ == '__main__':
    # 問題1:y = √(x - 1) + 2
    a = 1
    p = 1
    q = 2
    MakeGraph(a, p, q)

    # 問題2:y = √-1(x - 1) + 2
    a = -1
    p = 1
    q = 2
    MakeGraph(a, p, q)

■実行結果

▼問題1

▼問題2

コメント

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