Как контролировать порядок баров на морском участке барплота - PullRequest
0 голосов
/ 17 марта 2019

У меня есть фрейм данных с 4000+ наблюдениями и двумя интересными столбцами: Доходы и кластер _.

enter image description here

Я хочу создать барплан с морской волнойчто я делаю следующим образом:

enter image description here

Теперь мне бы хотелось упорядочить столбцы в алфавитном порядке, то есть сначала (слева направо), затем A +A, B +, B, C.

Следующая команда выдает ошибку значения:

sorted_keys = ['A+', 'A', 'B+', 'B', 'C']
data7a.set_index('cluster_').reindex(sorted_keys, axis = 0)

ValueError: cannot reindex from a duplicate axis

Как я могу это сделать?

1 Ответ

0 голосов
/ 17 марта 2019

Устаревший:

sns.barplot(x='cluster_', y='Revenue', data=data7.sort_index())

, поскольку создание сюжета должно работать.И если вы хотите произвольный порядок столбцов, вы все равно можете сделать

sorted_keys = ['C', 'B+', 'A+', 'B', 'A'] # for example
sns.barplot(x='cluster_', y='Revenue', data=data7.reindex(sorted_keys))

, чтобы получить произвольный порядок, который вам нужен.

Редактировать: При использовании barplot в seaborn вы можете передать параметр order, поэтому с

sns.barplot(x='cluster_', y='Revenue', data=data7, order=['A', 'A+', 'B', 'B+', 'C'])

вы должны быть хорошими.

...