Сюжеты не выстраиваются в очередь, потому что Seaborn (ну, конечно, Matplotlib за кулисами) разрабатывает лучший способ дать вам десять корзин для каждого набора данных, который вы ему передаете.Но эти два набора могут не иметь одинакового диапазона.
Вы можете указать последовательность в качестве аргумента bin, которая определяет ребра bin.Предполагая, что у вас есть numpy, вы можете использовать функцию linspace
, чтобы легко создать эту последовательность из наименьших и самых больших значений в ваших данных.
plt.figure(figsize(10,8))
bins = np.linspace(min(loans['fico']), max(loans['fico']), num=11)
ax1 = sns.distplot(loans['fico'][loans['credit.policy']==1], bins=bins,
kde=False, hist_kws=dict(edgecolor='k', lw=1))
ax2 = sns.distplot(loans['fico'][loans['credit.policy']==0], bins=bins,
color='Red', kde=False, hist_kws=dict(edgecolor='k', lw=1))
И тогда вам не нужно устанавливать ограничения по x.
Пример с некоторыми случайно сгенерированными значениями: ![enter image description here](https://i.stack.imgur.com/TUjUV.png)