三次方程式のグラフ。
import matplotlib.pyplot as plt
import numpy as np
# linspace(min, max, N) で範囲 min から max を N 分割
x = np.linspace( -20, 20, 60)
y1 = +x**3 + x**2 - x**1
y2 = -x**3 + x**2 - x**1
plt.plot(x, y1, color='b', ls='-', label='Y1')
plt.plot(x, y2, color='r', ls='-', label='Y2')
plt.legend()
plt.grid()
plt.xlabel('x')
plt.ylabel('y')
plt.show()
X^3と10xのグラフと交点を表示。
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace( -4, 4, 1000)
y1 = x**3
y2 = 10*x
plt.plot(x, y1, color='b', ls='-', label='Y1')
plt.plot(x, y2, color='r', ls='-', label='Y2')
plt.legend()
plt.grid()
plt.xlabel('x')
plt.ylabel('y')
idx = np.argwhere(np.diff(np.sign(y1 - y2))).flatten()
plt.plot(x[idx], y1[idx], 'ro')
plt.show()
コメント