3.5 延伸阅读:设置一般化的日期刻度线

我们已经讲解过有关日期型时间序列图的绘制方法。如果我们尝试将x轴的刻度线的日期间隔调整为定制化的模式,就需要使用rrule刻度定位器完成一般化的日期刻度线的设置任务。下面,我们就看看如何通过具体代码来实现rrule刻度定位器的应用功能。

1.代码实现

2.运行结果(见图3-6)

图3-6

3.代码精讲

(1)使用matplotlib.dates.rrulewrapper,rrulewrapper是基于dateutil包中的模块rrule里的类rrule构建的一个简单包装器,可以实现任意刻度线的定制化的目标。

类rrule的构造函数的参数含义如下。

● freq:可以取值 YEARLY、MONTHLY、WEEKLY、DAILY、HOURLY、MINUTELY 或SECONDLY,其中,YEARLY的取值是0。

● interval:每个freq下的间隔区间。如果使用freq中的YEARLY,interval的取值是2,就表示以每两年作为年份的间隔区间。

● byeaster:复活节(周日)的滞后天数。如果传递参数值 0,就会产生复活节(周日)当天的日期。

(2)类RRuleLocator是使用包装器rrulewrapper的日期刻度定位器。将实例loc作为参数代入“ax.xaxis.set_major_locator(loc)”语句中,实现设置x轴的主刻度线位置的任务。

(3)关于“代码实现”部分里的其他代码的具体含义和用法,这里就不再阐述了。