mdates.DateLocator()引发NotImplemented错误

时间:2017-10-04 11:40:51

标签: python matplotlib

我仍在努力在xticks中获得更好的舍入数据时间: rounding datetimes in xticks matplotlib

所以答案很好,我可以使用

plt.gca().xaxis.set_major_locator(mdates.DateLocator()) 

在xticks中获得圆形时间。

但是,如果我只是做

  File "/python/anaconda-2.7.11-64/lib/python2.7/site-packages    /matplotlib/ticker.py", line 1289, in __call__
    raise NotImplementedError('Derived must override')
NotImplementedError: Derived must override

它给出了:

matplotlib.__version__'2.0.2'

将HourLocator()更改为DateLocator()是否真的不可能? 我在用 ^blog/([0-9]+)

1 个答案:

答案 0 :(得分:2)

您并不意味着单独使用DateLocator。这是matplotlib提供的日期的所有其他定位器的基类。 matplotlib将API页面lists the possible locators更新为

  

以下是所有日期代码:

     
      
  • MinuteLocator:找到分钟
  •   
  • HourLocator:找几小时
  •   
  • DayLocator:找到当月指定的日期
  •   
  • WeekdayLocator:找到一周中的几天,例如MO,TU
  •   
  • MonthLocator:定位月份,例如7月7日
  •   
  • YearLocator:找到基数倍数的年份
  •   
  • RRuleLocator:使用matplotlib.dates.rrulewrapper定位。 rrulewrapper是一个围绕dateutil.rrule(dateutil)的简单包装器,它允许几乎任意的日期刻度规范。见rrule示例。
  •   
  • AutoDateLocator:在自动缩放时,此类选择最佳的MultipleDateLocator来设置视图限制和刻度位置。
  •   

选择其中任何一个,你会没事的。

除了提到的那些,还有SecondLocator和。{  一个MicrosecondLocator可用,但没有(很好)记录。