x轴matplotlib重叠的时间

时间:2017-01-23 17:56:40

标签: python-3.x matplotlib

我使用以下功能及时绘制比特率

#!/usr/bin/python3
import matplotlib.pyplot as plt
import datetime

def plotBitrate(time,bitrate,filename):
    time = [datetime.datetime.strptime(elem, '%H:%M:%S.%f') for elem in time]

    plt.plot(time,bitrate)
    plt.xlabel('Time')
    plt.ylabel('Bitrate kbits/s')

    plt.autofmt_xdate()
    plt.savefig(filename, dpi = 300)
    plt.close()

数据看起来像这样

Time        bitrate
00:00:00.95 33528.2
00:00:01.47 30013.2
00:00:01.99 26238.5

但是这个时间格式导致了剧情中的重叠刻度

enter image description here

我尝试使用plt.autofmt_xdate()格式化x轴,但这不起作用,我得到AttributeError:模块'matplotlib.pyplot'没有属性'autofmt_xdate'。

是否可以格式化x轴以使刻度不重叠?

祝你好运

1 个答案:

答案 0 :(得分:1)

autofmt_xdate()确实是防止重叠标签的好方法。但是,pyplot没有这种方法,相反,它是figure的一种方法。

因此

plt.gcf().autofmt_xdate()

可以胜任。