seaborn : barplot の xticks の調整が難しかった

seaborn の barplot を使っている時、1990~2020 年までのデータに不足があったので、間がとびとびのbarplotになっていた。

xticks(np.arange(1990, 2020))

とかで調整しようとすると、barが消えたりする。

不足分を補うことで、対応した。やむなし。idnex は list の product を使用することで、なんとかした。

# new_index = pd.Index(np.arange(1993,2020,1), name="年")

new_index = pd.MultiIndex.from_product(
    [np.arange(1993,2020,1), [1, 0]],
    names=['年', 'フラグ'],
)

tmp = df[
    ['年', 'フラグ', '代表契約IDグループ']
].groupby(by=['年', 'フラグ'], observed=True).size().reindex(new_index).fillna(0).reset_index().rename(
    columns={
        0: '件数',
    }
)

stackoverflow.com