when I tried to plot a timeseries with ggplot, the x axis lables became too crowded and overlapped each other:
The code is:
plot = ggplot(df, aes(x=df.index, weight='COUNT')) + \
geom_bar() + \
xlab('Date') + \
ylab('Incidents')
I tried to add the following line
+ theme(axis.text.x = element_text(angle = 90, hjust = 1))
to the plot, but it doesn't work. And this extra line gives me error:
SyntaxError: keyword can't be an expression
close failed in file object destructor:
sys.excepthook is missing
lost sys.stderr
Any idea how this happened and how should I fix it? Thanks!!
(Old question, posting the answer if anyone comes across this in the future)
"axis.text.x" format is used for R. When using ggplot for python, replace "axis.text.x" with "axis_text_x"
This worked for me:
theme(axis_text_x = element_text(angle = 90, hjust = 1))
Reference: https://github.com/yhat/ggplot/blob/master/ggplot/themes/theme.py
来源:https://stackoverflow.com/questions/23964236/python-ggplot-rotate-axis-labels