我使用下面的代码打印了一个海上线条图。
timeplot = sns.lineplot(x='YearMonth', y='count', data=delivered_by_month)这很好用,但是x轴标签是重叠的,所以我想旋转它们。
因此,我在上面的代码行之后添加了一行代码,如下所示。
timeplot.set_xticklabels(labels=timeplot.get_xticklabels(), rotation=90, ha="right")现在X轴标签消失了。通过运行下面的代码,我确认所有的标签都被清除了。
for m in timeplot.get_xticklabels():
print (m)为此,我得到了如下输出。
Text(0, 0, '')
Text(1, 0, '')
Text(2, 0, '')
Text(3, 0, '')
Text(4, 0, '')如果我在旋转代码之前打印标签,我会得到如下所示的正确输出。
Text(0, 0, '2010-10')
Text(1, 0, '2010-11')
Text(2, 0, '2010-12')
Text(3, 0, '2010-2')
Text(4, 0, '2010-3')任何输入都会很有帮助。
发布于 2020-10-19 17:06:33
我刚刚遇到了同样的问题,这对我很有帮助:https://stackoverflow.com/a/41131528/14396570
显然,在绘制图形之前,timeplot.get_xticklabels()是空的,所以您必须在设置x刻度标签之前调用plt.draw(),如下所示:
timeplot = sns.lineplot(x='YearMonth', y='count', data=delivered_by_month)
plt.draw()
timeplot.set_xticklabels(labels=timeplot.get_xticklabels(), rotation=90, ha="right")https://stackoverflow.com/questions/60015877
复制相似问题