我用以下方法绘制二项分布的概率质量函数:
fig=plt.figure(figsize=(10,10))
binom=[scs.binom.pmf(k,100,0.2) for k in range(100)]
print(np.max(binom)) #0.0993002148088
[plt.axvline(k,ymax=scs.binom.pmf(k,100,0.2)) for k in range(100)]
plt.ylim(ymax=0.1)
plt.show()
如您所见,binom的最大值为0.099300表示绘图应该几乎达到y轴的上限,但结果如下:
那么我做错了什么?为什么图表不符合限制?
答案 0 :(得分:2)
我想你可能想要使用stem
plot。
import matplotlib.pyplot as plt
import numpy as np
import scipy.stats as scs
fig=plt.figure(figsize=(10,10))
binom=[scs.binom.pmf(k,100,0.2) for k in range(100)]
# Scale the yvalues by ymax
plt.stem(binom, linefmt='b-', markerfmt='none', basefmt='none')
plt.show()