下面是R中curve function的example,
curve(dgamma(x, 3, .1), add=T, lwd=2, col="orange")
,
绘制了dgamma
连续分布的概率密度函数曲线。与Python语言中的dgamma
等效的是scipy.stats.dgamma
。
如何在Python中为相同的分布绘制相同的曲线?我更喜欢这一点,而不是拟合核密度估计器(KDE),后者往往不准确。
发布于 2021-01-08 11:02:38
就这一点而言,我不认为matplotlib
或seaborn
中有curve
的等价物。您必须定义一组点,并在同一设备上绘制它。在本例中,由于您正在做直方图,因此它将获得最小值和最大值之间的一些均匀间隔的点:
from scipy import stats
import numpy as np
import matplotlib.pyplot as plt
x = stats.gamma.rvs(a=3,scale=1/0.1,size=1000)
plt.hist(x,density=True)
xl = np.linspace(x.min(),x.max(),1000)
plt.plot(xl,stats.gamma.pdf(xl,a=3,scale=1/0.1))
https://stackoverflow.com/questions/65620155
复制相似问题