二次関数
\begin{align}
y=ax^2+bx+c \hspace{5mm} (a \neq 0)
\end{align}
は\(a\)と頂点\((p,q)\)を定めたとき、\(b,c\)を
\begin{align}
b&=-2ap \\
c&=ap^2+q
\end{align}
とすれば指定した頂点を通る二次関数を描画できる。
以下ソースコード
import numpy as np
import matplotlib.pyplot as plt
p = 1
q = 3
a = 1
b = -2*a*p
c = a*p**2+q
x = np.arange(-1.0, 2.0, 0.02)
y = a * x ** 2 + b * x + c
plt.plot(x, y, 'k-')
plt.grid()
plt.show()
結果
コメント