我想绘制一个具有以下PDF特征的Levy分布:
下面是我的代码:
import matplotlib.pyplot as plt
from scipy.special import gamma
import numpy as np
def Levy(x, n, a):
num1 = gamma((n+1)/2)
den1 = (gamma(1/2))*(gamma(n/2))
num2 = a**n
den2 = ((x**2)+(a**2))**((n+1)/2)
return (num1/den1)*(num2/den2)
t = np.linspace(0, 4, 500)
plt.plot(t, Levy(t, 2, 2))
plt.show()
但是该图向我返回了y = 0的水平线。
我知道我实现的方程式应该给我返回类似于高斯分布的东西。我也尝试在Wolfram Alpha上实现它,并且绘制出了我的期望。
我认为python代码中的问题可能是gamma函数,但我认为我已经以正确的方式使用了它。
请问有人可以帮我吗?