Странная "счетная" матрица из matplotlib.pyplot.hist2d - PullRequest
0 голосов
/ 17 января 2019

Я бы хотел получить массив 2d numpy из функции 2dhist. После получения количества я хотел бы отобразить данные в функции pyplot.imshow () для дальнейшего добавления некоторой информации. Целые числа, которые могут появляться в моем списке, находятся в диапазоне от 0 до 11 (следовательно, 12 ячеек).

Однако я получаю странную матрицу.

data1 = [2, 3, 3, 10, 3, 2, 10, 2, 2, 2, 2, 2, 10, 2, 10, 10, 9, 2, 9, 10, 
9, 9, 9, 3, 10, 3, 2, 10, 1]
data2 = [5, 6, 7, 7, 7, 7, 6, 4, 6, 4, 4, 8, 5, 5, 5, 6, 8, 6, 5, 4, 5, 6, 
4, 4, 6, 4, 5, 4, 5]
n_bins = 12
fig, ax = plt.subplots()
counts, xedge, yedge, image = ax.hist2d(data1, data2, bins=n_bins)

result: 
array([[0., 0., 0., 1., 0., 0., 0., 0., 0., 0., 0., 0.],
       [3., 0., 0., 3., 0., 0., 2., 0., 0., 1., 0., 1.],
       [2., 0., 0., 0., 0., 0., 1., 0., 0., 2., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [1., 0., 0., 2., 0., 0., 1., 0., 0., 0., 0., 1.],
       [2., 0., 0., 2., 0., 0., 3., 0., 0., 1., 0., 0.]])

transposed:
 array([[0., 3., 2., 0., 0., 0., 0., 0., 0., 0., 1., 2.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [1., 3., 0., 0., 0., 0., 0., 0., 0., 0., 2., 2.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 2., 1., 0., 0., 0., 0., 0., 0., 0., 1., 3.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 1., 2., 0., 0., 0., 0., 0., 0., 0., 0., 1.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 1., 0., 0., 0., 0., 0., 0., 0., 0., 1., 0.]])

Если мы внимательно посмотрим на списки данных, то увидим, что, например, целое число 0 никогда не появляется. Как может быть поэтому запись в первом столбце?

Я был бы очень признателен за ваши внутренности. Спасибо.

...