Когда вы решите нарисовать гистограмму, вы хотите построить все значения, содержащиеся в интервале.Если я хорошо понимаю, вы хотите посчитать все значения e
согласно списку Data
.Если вам не ясно с этим, посмотрите здесь .
Data
определит, в каком интервале вы хотите посчитать значения e
.Параметр bin
(doc) дает вам такую возможность.Также «лучше» сортировать данные.Если вы не сортируете Data
, это означает, что интервалы могут перекрываться, и вы можете считать значения в нескольких интервалах.(Если вы не сортируете это, это работает. Я не уверен, что это то, что вы хотите, зависит от вашей работы).Здесь я отсортировал Data
.Вы можете попробовать оба!
Вот пример:
# Import module
import numpy as np
import matplotlib.pyplot as plt
Data = np.array([-1.61032636, -1.23577245, -0.50587484, -0.28348457,
-0.18748945, 0.4537447, 1.2338455, 2.13535718])
Data.sort()
print(Data)
# [-1.61032636 - 1.23577245 - 0.50587484 - 0.28348457 - 0.18748945 0.4537447
# 1.2338455 2.13535718]
# Just in order you get the same plot
np.random.seed(2019)
# Assuming e is define as bellow
e = (np.random.rand(50) - 0.5) * 2
print(e)
# [ 0.80696443 -0.21383899 0.24793992 0.2757548 0.76099814 -0.40165596
# 0.40439654 0.80641232 0.76276385 -0.1885004 -0.09510676 -0.46585935
# -0.67427026 0.77842939 -0.70304755 0.96944697 -0.93527756 0.03070151
# -0.59774191 0.77202175 0.02723984 0.15660317 -0.40143469 0.67439481
# 0.05329966 -0.79031152 -0.44374118 -0.90681013 0.0181523 -0.05514742
# 0.80897467 0.88698444 0.4067847 0.69259591 0.85598929 0.63872377
# 0.69037113 0.58290375 -0.65799968 -0.42004416 -0.39103217 -0.70467981
# 0.14763706 0.72711402 -0.35340105 -0.44870115 0.36437477 -0.61718738
# 0.16204896 0.72511654]
# Build the histogram
n, bins, patches = plt.hist(e, bins=Data )
print("n: ", n)
print("bins: ", bins)
# Show the histogram
plt.show()