В вашем коде есть 2 вещи:
Я думаю, math
функции принимают только скаляры (int
, float
и т. Д.), А не списки или массивы.
Факторная функция определена только для (положительных) целых чисел, а не для числа с плавающей запятой, например 0.5
.
Я думаю, что вы ищетедля функции gamma
, которая расширяет факториальную функцию над действительными числами:
from scipy.special import gamma
x = np.linspace(0, 10, 1000)
plt.plot(x,gamma(x), label='Factorial')
plt.plot(x, x**5, label='$x^5$')
xx = np.arange(11)
plt.scatter(xx, gamma(xx))
plt.legend()
Вывод: ![enter image description here](https://i.stack.imgur.com/HNzrg.png)