Я не думаю, что это возможно. Catplot
был разработан для сравнения данных по категориям, поэтому отображение пробелов является предполагаемым поведением. Вместо этого вы могли бы создавать такие регулярные сюжеты:
df = pd.DataFrame({'teamID': [1,2,3,2,3,4], 'time_period': [2018,2018,2018,2019,2019,2019], 'winrate': [.8, .7, .9, .85, .8, .95]})
f, ax = plt.subplots(1, len(grp))
grp = df.groupby('time_period')
for i,g in enumerate(grp):
sns.barplot(g[1].teamID.to_list(), g[1].winrate.to_list(), ax=ax[i])
ax[i].title.set_text(g[0])
Обратите внимание, что одинаковые цвета соответствуют различным командам на разных участках, поэтому вы можете захотетьвключите, например, color=sns.color_palette()[0]
, чтобы установить все столбцы на один цвет.