Matplotlib x轴重叠

时间:2018-04-26 00:41:36

标签: python matplotlib jupyter-notebook

我有两个列表,x_axis,它是格式为'12:30:00'的时间列表。 y轴是百分比值。我需要在图表上绘制所有值,但是由于x轴字符串太长,它们会重叠。无论如何我可以让matplotlib在x轴上每次都不显示?任何帮助,将不胜感激。 enter image description here

enter image description here

4 个答案:

答案 0 :(得分:2)

您可以旋转并打印每个第二个ticklabel:

_ = plt.plot(df['str_time'], df.Pct, 'ro')
ax = plt.gca()
plt.axis([0,24,0,50])
plt.xticks(rotation=90)
for label in ax.get_xaxis().get_ticklabels()[::2]:
    label.set_visible(False)

输出:

enter image description here

答案 1 :(得分:1)

您可以使用以下代码旋转标签以显示列表时间。

plt.xticks(rotation=90)

答案 2 :(得分:1)

我需要步进 x 轴数字而不是旋转。

ax.set_xticks(np.arange(0, max_number, 5)) #step 5 digits

输出:matplotlib plot

答案 3 :(得分:0)

自动执行此操作的一种方法是使用autofmt_xdate

fig.autofmt_xdate():

要获取无花果对象,您必须调用子图函数

fig, ax = plt.subplots()

效果很好

enter image description here