问CHAT:用python绘制概率密度图像
CHAT回复:你可以使用Python的matplotlib库和numpy库进行概率密度的绘制。
以下是一个简单的例子: ```python import numpy as np import matplotlib.pyplot as plt #随机生成1000个正态分布的数 data = np.random.randn(1000) #生成包含这1000个数的直方图, bins表示条形的个数 plt.hist(data, bins=30, density=True, alpha=0.5, histtype='stepfilled', color='steelblue', edgecolor='none') #画出理论上的正态分布曲线 from scipy.stats import norm xmin, xmax = plt.xlim() x = np.linspace(xmin, xmax, 100) p = norm.pdf(x, 0, 1) plt.plot(x, p, 'k', linewidth=2) plt.show() ```
在上述代码中,我们首先生成了一组服从正态分布的随机数data。然后,使用plt.hist函数生成直方图,并设置为条形的个数为30,同时设置density为True表示绘制概率密度。以alpha设置透明度,在颜色和边缘颜色设置中我们方便观看。
求取理论上的正态分布曲线,我们使用Scipy库的stats.norm模块的pdf方法。PDF表示概率密度函数,该函数需要输入一个x值序列、一个均值和一个标准差。
在这里,我们使用numpy的linspace生成了一组平均分布的x值,然后将它们作为参数传递给pdf函数。
更多体验可关注 注册