numpy.histogram return values aren't the same size
If I ask you to count the number of people in a room by age ranges, you might tell me:

10-17 years: one person
18-29 years: three people
30-50 years: two people

That's three bins but four edges (10, 18, 30, 50 in the way NumPy reports edges).
If you want to convert those four edges to three values which somehow identify the bins, you could:

Use the lower value to represent each range (i.e. discard the last edge returned by NumPy).
Use the upper value.
Use the midpoint of each range.
Use the mean, median or mode of each group's values.

It's up to you, NumPy isn't making this choice for you.
Why does the numpy.histogram return values of hist and bin_edges not have the same size? Instead bin_edges has (length(hist)+1). This becomes an issue when attempting a best fit line for the histogram because then the two operates have different sizes. What can I do to make the two match? Do I just trim off the last value from bin_edges? Which value from bin_edges doesn't correspond to its respective hist value?