python绘制累积正态分布概率图

python绘制累积正态分布概率图

累积正态分布概率图,即正态分布函数的积分形式。其公式为:
python绘制累积正态分布概率图
去掉积分符号就是正态分布的公式。

以下是实现的代码。

// A code block
import numpy as  np
import matplotlib.pyplot as plt
from scipy.optimize import curve_fit
import scipy.stats as st
import math

#定义纵坐标值
Y1 =  [0, 0, 0, 0, 0.1, 0.1, 0.1, 0.3, 0.5, 0.5, 0.7, 0.7, 0.8, 0.8, 0.9, 0.9, 0.9, 1, 1, 1, 1, 1, 1, 1]
#定义横坐标值
X1 = np.arange(1,len(Y1)+1)

# 拟合函数表达式定义
# miu是正态分布均值,theta是正态分布方差
def func(x, miu, theta):    
    return st.norm.cdf((x-miu)/theta)

# 绘制数据散点图
plt.plot(X1, Y1, 'b*', label='data')
# 进行数据拟合
popt, pcov = curve_fit(func, X1,Y1)
# 输出拟合的函数参数值
print(popt)
# 绘制拟合函数
plt.plot(X1, func(X1, *popt), 'r-',
         label='fit: miu=%5.3f, theta=%5.3f' % tuple(popt))

输出结果如下所示:
python绘制累积正态分布概率图

上一篇:读取文件进行绘图


下一篇:MATLAB实例:二元高斯分布图