Python 使用numpy/matplotlib绘制范围为底部/顶部/无限的直方图

Python 使用numpy/matplotlib绘制范围为底部/顶部/无限的直方图,python,numpy,matplotlib,Python,Numpy,Matplotlib,我认为这个标题并不确切。如果有人要修改它,请帮助我 我曾经使用numpy和matplotlib绘制分布图。据我所知,np.histogram只能设置具有底部和顶部值的范围。但我想让它成为三个值,即底部、顶部和无限。 比如说 MW=[121,131,...,976,1400] # hundreds of out-of-order items b,bins = np.histogram(MW,bins=10,range=(0,1000)) ax.bar(bins[:-1]+50,b,align='c

我认为这个标题并不确切。如果有人要修改它,请帮助我

我曾经使用numpy和matplotlib绘制分布图。据我所知,np.histogram只能设置具有底部和顶部值的范围。但我想让它成为三个值,即底部、顶部和无限。 比如说

MW=[121,131,...,976,1400] # hundreds of out-of-order items
b,bins = np.histogram(MW,bins=10,range=(0,1000))
ax.bar(bins[:-1]+50,b,align='center',facecolor='grey',alpha=0.5,width=100,)
使用这些代码,我可以绘制一个分布图,其中有十个箱子(0-100100-200,…900-1000)。但也有一些数字高于1000。我想把它们放进“(1000-+∞)". 因此,似乎要使range的参数变为(01000,无穷大/或一个足够大的数字),但它不可用

一个可怕的方法是使用一些技巧,例如:

MW=[x if x <1000 else 1001 for x in MW]
b,bins = np.histogram(MW,bins=11,range=(0,1100))

MW=[x如果x,您可以尝试手动指定料仓宽度并使最后一个非常大。
bins=[01002000300400500600700800900100010000]
。您可以尝试手动指定料仓宽度并使最后一个非常大。
料仓=[010020003004005006007008009001000]