如何創建一個直方圖,該直方圖顯示給定的數組x從0到1範圍內的概率分佈?我期望每個欄是< = 1,如果我總結每個欄的y值,他們應該加起來爲1.如何繪製python中的概率質量函數
例如,如果x = [.2,.2,.8],那麼我會期望一個圖表顯示2條,一條在.2處,高度爲0.66,一條在0.8處,高度爲0.33。
我已經試過:
matplotlib.pyplot.hist(x, bins=50, normed=True)
這給了我與上面去1.我不是說這是錯誤的,因爲這正是賦範參數將根據文檔做吧直方圖,但沒有按不顯示概率。
我也試過:
counts, bins = numpy.histogram(x, bins=50, density=True)
bins = bins[:-1] + (bins[1] - bins[0])/2
matplotlib.pyplot.bar(bins, counts, 1.0/50)
這也給了我條,其Y值之和大於1
你能解釋爲什麼這部分是必要的嗎? bins = bins [: - 1] +(bins [1] - bins [0])/ 2 – user3314418