Следующий минимальный пример показывает мою проблему:
import matplotlib.pyplot as plt
import numpy as np
X = np.random.normal(30, 10, 1000)
Y = np.random.normal(200, 500, 1000)
x_space = np.linspace(0, 60, 6)
print('x_space:', x_space)
y_space = np.logspace(np.log10(1.0), np.log10(1000.0), 30)
print('y_space:', y_space)
plt.hist2d(X, Y, bins=(x_space, y_space))
plt.yscale('log')
plt.show()
Я ожидаю, что ячейки будут отображаться на графике одинакового размера, потому что логарифмический масштаб на оси y и логарифмическое пространство для y должны равнятьсяиз.Однако, похоже, что это не так.

Текстовый вывод сгенерированных корзин выглядит хорошо для меня:
x_space: [ 0. 12. 24. 36. 48. 60.]
y_space: [ 1. 1.268961 1.61026203 2.04335972 2.5929438
3.29034456 4.17531894 5.29831691 6.72335754 8.53167852
10.82636734 13.73823796 17.43328822 22.12216291 28.07216204
35.6224789 45.20353656 57.3615251 72.78953844 92.36708572
117.21022975 148.73521073 188.73918221 239.502662 303.91953823
385.66204212 489.39009185 621.01694189 788.04628157 1000. ]
Но это не соответствует тому, что написано.
И я что-то не так делаю, или это может быть ошибка в библиотеке?
(я использую Matplotlib версии 2.2.2.)