Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Plotting bar plot in Seaborn Python with rotated xlabels

How can I plot a simple bar graph in Seaborn without any statistics? The data set is simply names and values.

import pandas
df = pandas.DataFrame({"name": ["Bob Johnson", "Mary Cramer", "Joe Ellis"], "vals": [1,2,3]})

I would like to plot this as a bar graph with xlabels pulled from name column and y-axis values from vals and have x-axis labels rotated 45 degrees. How can it be done? Using sns.barplot like:

sns.barplot(x="name", y="vals", data=df)

will compute statistics that are not relevant here.

like image 601
mvd Avatar asked Dec 03 '22 23:12

mvd


1 Answers

You mean like that (set_xticklabels approach):

import pandas

df = pandas.DataFrame({"name": ["Bob Johnson", "Mary Cramer", "Joe Ellis"], "vals": [1,2,3]})
g = sns.barplot(x='name', y='vals', data=df)
g.set_xticklabels(g.get_xticklabels(), rotation=45)

Or probably plt.xticks approach can help:

import pandas
import matplotlib.pylab as plt

df = pandas.DataFrame({"name": ["Bob Johnson", "Mary Cramer", "Joe Ellis"], "vals": [1,2,3]})

bar_plot = sns.barplot(x='name', y='vals', data=df)
plt.xticks(rotation=45)
plt.show()
like image 139
Erba Aitbayev Avatar answered Dec 28 '22 04:12

Erba Aitbayev