При вызове ax.bar()
числовые отметки заменяются одним отметкой на новой панели. Я не знаю, есть ли рекомендуемый способ справиться с этим, но я смог вручную установить галочки с помощью set_xticks()
. Я оставил один основной тик, как у вас сейчас, а затем добавил незначительные тики для числовых корзин.
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
np.random.seed(0)
time = np.random.uniform(size = 1000)
fail = time > 0.95
d = pd.DataFrame(time)
d.loc[fail,0] = np.nan
d['fail'] = np.isnan(d.loc[:,0])
ax = d[0].hist()
ax.bar(left=1.5,height=d['fail'].sum(),color='r',tick_label='Fail')
minor_ticks = [x/5 for x in range(6)]
ax.set_xticks(minor_ticks, minor=True)
ax.set_xticklabels(minor_ticks, minor=True)
plt.show()
Мне также пришлось изменить ax.bar(x=...)
на ax.bar(left=...)
. Я не знаю, была ли это ошибка или просто разница в версии.
Вот как выглядит мой сюжет:
![example plot](https://i.stack.imgur.com/3wjt8.png)