3
我產生下面以一個電話的身影matplotlib.pyplot.hist
中,我通過了kwarg normed=True
:如何規格化直方圖,使高度之和等於1?
經進一步研究,我意識到,這種標準化的這樣的作品是的積分直方圖等於1.我如何繪製相同的數據以使條的高度之和等於1?
換句話說,我希望每一位代表它的值包含的整體比例。
我產生下面以一個電話的身影matplotlib.pyplot.hist
中,我通過了kwarg normed=True
:如何規格化直方圖,使高度之和等於1?
經進一步研究,我意識到,這種標準化的這樣的作品是的積分直方圖等於1.我如何繪製相同的數據以使條的高度之和等於1?
換句話說,我希望每一位代表它的值包含的整體比例。
我不知道是否有一個簡單的方法,但 您可以手動輸入的長度除以所有酒吧的高度(以下是ipython --pylab
做出跳過進口):
inp = normal(size=1000)
h = hist(inp)
它給你
現在,你可以這樣做:
bar(h[1][:-1], h[0]/float(len(inp)), diff(h[1]))
,並得到
謝謝!你能解釋一下'hist'返回的元組中的每個元素是什麼?你的bar(h [1] [: - 1],h [0]/float(len(inp)),diff(h [1]))'讓我有些困惑! – blz
@blz ['hist'](http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.hist)返回'heights'和'x points'作爲元組的前兩個元素。 ['bar'](http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.bar)將'left'和'top'作爲前兩個參數。 –
謝謝!我在我的數據上運行了你的代碼,但我似乎沒有得到一個規格化的直方圖=/[這裏](https://dl.dropbox.com/u/6160029/normR.pickle)是數據(PANDAS DataFrame對象)和[這裏](http://www.hastebin.com/ponagaciji.py)是我使用的代碼。此外,[這裏](https://dl.dropbox.com/u/6160029/normHist_fail.png)是我得到的圖表。任何想法我做錯了嗎? – blz