Jak mogę utworzyć histogram, który pokazuje rozkład prawdopodobieństwa danej tablicy liczb x w zakresie od 0-1? Oczekuję, że każdy pasek będzie < = 1 i jeśli zsumuję wartości y każdego słupka, powinny one sumować się do 1.Jak wykreślić funkcję masy prawdopodobieństwa w pythonie
Na przykład, jeśli x = [.2, .2, .8] to będę spodziewaj się wykresu przedstawiającego 2 słupki, jeden o wysokości 0,2 i wysokości 0,66, drugi o wysokości 0,8 i wysokości 0,33.
Próbowałem:
matplotlib.pyplot.hist(x, bins=50, normed=True)
który daje mi histogram z barów, które wykraczają ponad 1. Nie mówię, że to źle, ponieważ to właśnie parametr Normed zrobi zgodnie z dokumentacją, ale to nie robi pokaż prawdopodobieństwa.
Próbowałem również:
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)
co daje mi również bary, których suma wartości y do większa niż 1.
Czy możesz wyjaśnić, dlaczego ta część jest konieczna? bin = bin [: - 1] + (bin [1] - bin [0])/2 – user3314418