import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np; np.random.seed(136)
l = "1234567890123"
categories = [ l[i:i+5]+" - "+l[i+1:i+6] for i in range(6)]
x = np.random.choice(categories, size=1000,
p=np.diff(np.array([0,0.7,2.8,6.5,8.5,9.3,10])/10.))
ds = pd.Series({"Column" : x})
有几个选项可使轴标签更可读。
更改图形大小
plt.figure(figsize=(8,4)) # this creates a figure 8 inch wide, 4 inch high
sns.countplot(x="Column", data=ds)
plt.show()
4条答案
按热度按时间utugiqy61#
像这样的
ds
系列有几个选项可使轴标签更可读。
更改图形大小
旋转ticklabel
减小字体大小
当然,这些方法的任何组合都同样有效。
设置rcParams
可以使用rcParams全局设置图形大小和xlabel字体大小
这可能是有用的放在顶部的juypter笔记本电脑,使这些设置适用于任何数字内生成。不幸的是,使用rcParams无法旋转xticklabels。
我想值得注意的是,同样的策略自然也适用于seaborn barplot,matplotlib bar plot或pandas.bar。
os8fio9y2#
您可以使用
pandas.pyplot
的xticks
方法旋转x_labels
并增大其字体大小。例如:
如需了解更多此类修改,请参阅此链接:Drawing from Data
tmb3ates3#
如果你只是想确保xticks标签不会挤在一起,你可以设置一个合适的fig大小,并尝试
fig.autofmt_xdate()
。此功能将自动对齐和旋转标签。
b0zn9rqh4#
我不知道这是否是你的一个选择,但也许把图形可能是一个解决方案(而不是在
x=
上绘图,在y=
上绘图),例如: