请教如何自定义python的matplotlib中的X轴刻度的问题
初学matplotlib,请大家多多包涵
小弟的目的是,早3点到晚10点之间,每30秒监控一次主机的CPU、内存使用率等指标,并绘制成折线图。
图的横坐标为时间(时分秒),纵坐标为监控指标
以CPU监控为例,目前小弟的做法是,生成两个list,一个存datetime.datetime格式的时间(年月日时分秒),另外一个list存我的监控结果。
然而,作图的时候,默认的图形横坐标时间间隔太短,画出的线太密,效果可如下图:
小弟希望将横坐标的监控作为30分钟一格,同时每个大刻度之间增加子刻度(3分钟一格)请问如何能够实现呢?非常感谢大家!小弟希望将横坐标的监控作为30分钟一格,同时每个大刻度之间增加子刻度(3分钟一格)请问如何能够实现呢?非常感谢大家!
matplotlib提供基本的接口:
from matplotlib.dates import AutoDateLocator, DateFormatter autodates = AutoDateLocator() yearsFmt = DateFormatter('%Y-%m-%d %H:%M:%S') figure.autofmt_xdate() #设置x轴时间外观 ax.xaxis.set_major_locator(autodates) #设置时间间隔 ax.xaxis.set_major_formatter(yearsFmt) #设置时间显示格式 ax.set_xticks() #设置x轴间隔 ax.set_xlim() #设置x轴范围