I have a dataset of 5000 products with 50 features. One of the column is \'colors\' and there are more than 100 colors in the column. I\'m trying to plot a bar chart to show
If you want to use pandas then you can first sort:
top_colors[:10].sort(ascending=0).plot(kind='barh')
Seaborn already styles your pandas plots, but you can also use:
sns.barplot(top_colors.index, top_colors.values)
An easy trick might be to invert the y axis of your plot, rather than futzing with the data:
s = pd.Series(np.random.choice(list(string.uppercase), 1000))
counts = s.value_counts()
ax = counts.iloc[:10].plot(kind="barh")
ax.invert_yaxis()
Seaborn barplot
doesn't currently support horizontally oriented bars, but if you want to control the order the bars appear in you can pass a list of values to the x_order
param. But I think it's easier to use the pandas plotting methods here, anyway.