首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SciPy stats Gamma PDF -无法成功地对PDF曲线下的区域进行着色

SciPy stats Gamma PDF -无法成功地对PDF曲线下的区域进行着色
EN

Stack Overflow用户
提问于 2020-03-04 09:34:39
回答 1查看 120关注 0票数 1

我一直在尝试使用多边形补丁对Gamma分布PDF下的区域进行着色,但无论我做什么,着色区域都不会与PDF的曲线对齐。多边形顶点是从相同的gamma pdf函数直接生成的。这里发生什么事情?

代码语言:javascript
复制
import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import gamma
from matplotlib.patches import Polygon

x = np.linspace (0, 100, 200)
fig, ax = plt.subplots(1,1, figsize=(20,10))
ax.set_title('Gamma Distribution - Probability Density Function')

y = gamma.pdf(x, a=9, scale = 0.5) #alpha=9, theta =0.5

ax.plot(y, "r-")
ax.legend(['α =9, λ=2'])

ax.set_ylim(0, 0.5)
ax.set_xlim(0,40)

verts = [*zip(x,y)]
poly = Polygon(verts, facecolor='0.9', edgecolor='0.5')
ax.add_patch(poly)


plt.show()
EN

回答 1

Stack Overflow用户

发布于 2020-03-04 11:05:28

如果您没有将xy数组都提供给plot函数,它将假定x值为0、1、2、... len(y)-1。这些不是您的x绘图的正确PDF值。

变化

代码语言:javascript
复制
ax.plot(y, "r-")

代码语言:javascript
复制
ax.plot(x, y, "r-")

以便使用正确的x值。

通过这个更改(在将图形大小更改为(10,5)之后),我得到了这个图:

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60517898

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档