(1)正态分布
均值为0,标准差为1:
代码:
import numpy as np
import matplotlib.pyplot as plt
# 定义正态分布的参数
mu = 0 # 均值
sigma = 1 # 标准差
# 生成x轴的值
x = np.linspace(mu - 4*sigma, mu + 4*sigma, 1000)
# 计算正态分布的概率密度函数值
y = (1/(np.sqrt(2*np.pi)*sigma)) * np.exp(-0.5 * ((x - mu)/sigma)**2)
# 绘制正态分布曲线
plt.plot(x, y, label=f'Normal Distribution\nμ={mu}, σ={sigma}')
plt.xlabel('x')
plt.ylabel('Probability Density')
plt.title('Normal Distribution')
plt.legend()
plt.grid(True)
# 显示图形
plt.show()
(2)高斯分布
在正态分布下,可以调整均值和标准差,我们设置均值为2,方差为5(标准差为√5):
代码:
import numpy as np
import matplotlib.pyplot as plt
# 定义高斯分布的参数
mu = 2 # 均值
variance = 5 # 方差
sigma = np.sqrt(variance) # 标准差
# 生成x轴的值
x = np.linspace(mu - 4*sigma, mu + 4*sigma, 1000)
# 计算高斯分布的概率密度函数值
y = (1/(np.sqrt(2*np.pi)*sigma)) * np.exp(-0.5 * ((x - mu)/sigma)**2)
# 绘制高斯分布曲线
plt.plot(x, y, label=f'Gaussian Distribution\nμ={mu}, σ={sigma:.2f}')
plt.xlabel('x')
plt.ylabel('Probability Density')
plt.title('Gaussian Distribution')
plt.legend()
plt.grid(True)
# 显示图形
plt.show()
(3)均匀分布
- 均匀分布 的最小值 (
a
) 设置为0
,最大值 (b
) 设置为1
。 - 代码生成的曲线 为从
0
到1
之间的均匀分布,概率密度PDF为常数1
- 假设区间是 [0, 1],PDF 为 1,则子区间 [0.2, 0.3] 的概率是
1 * (0.3 - 0.2) = 0.1
。
代码:
import numpy as np
import matplotlib.pyplot as plt
# 定义均匀分布的参数
a = 0 # 最小值
b = 1 # 最大值
# 生成x轴的值
x = np.linspace(a - 1, b + 1, 1000)
# 计算均匀分布的概率密度函数值
y = np.where((x >= a) & (x <= b), 1/(b - a), 0)
# 绘制均匀分布曲线
plt.plot(x, y, label=f'Uniform Distribution\nRange: [{a}, {b}]')
plt.xlabel('x')
plt.ylabel('Probability Density')
plt.title('Uniform Distribution')
plt.legend()
plt.grid(True)
# 显示图形
plt.show()
好啦,希望能够帮助到大家!