matplotlib的hist画光滑曲线
要在matplotlib中绘制光滑曲线,可以使用核密度估计(KDE)方法。KDE是一种通过对数据进行平滑处理来估计概率密度函数(PDF)的方法。
下面是一个使用KDE方法绘制光滑曲线的示例代码:
import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import norm
# 生成一组随机数据
np.random.seed(0)
data = np.random.randn(1000)
# 使用KDE方法估计概率密度函数
kde = norm(loc=data.mean(), scale=data.std())
x = np.linspace(data.min(), data.max(), 100)
y = kde.pdf(x)
# 绘制直方图和光滑曲线
plt.hist(data, bins=30, density=True, alpha=0.5)
plt.plot(x, y, color='red')
plt.xlabel('Value')
plt.ylabel('Density')
plt.title('Histogram with Smooth Curve')
plt.show()
在这个例子中,我们首先生成了一组随机数据,然后使用scipy.stats库中的norm函数创建了一个正态分布的KDE对象。然后,我们使用pdf()方法计算了在一系列x值上的概率密度函数值,并将其绘制为光滑曲线。最后,使用hist()函数绘制了直方图,并将density参数设置为True以将直方图的y轴值转换为概率密度。
运行这段代码将绘制出一个包含直方图和光滑曲线的图形
原文地址: https://www.cveoy.top/t/topic/hARq 著作权归作者所有。请勿转载和采集!