[egenix-users] Matplotlib (pylab) datetime incompatible with
Egenix mxDateTime
M.-A. Lemburg
mal at egenix.com
Sun Jul 16 22:47:02 CEST 2006
Simon Hook wrote:
> Hi,
>
> [cross posted to egenix and matplotlib]
>
> I have been using the egenix mxDateTime module and want to plot some of
> the dates with Matplotlib (pylab). Pylab uses num2date and date2num to
> covert datesandtimes to floating point values for plotting.
> Unfortunately if you give pylab date2num an egenix DateTime object,
> pylab bombs. Is there a simple way to use egenix DateTime objects with
> Pylab?
>
> Below is a simple example
>
> #D:\apps\Python23\python.exe
>
> from datetime import *
> from mx.DateTime import *
> from pylab import *
>
> # This works
> a=datetime(2005,10,10,5,5,5)
> print a
>
> # This works
> b=DateTime(2005,10,10,5,5,5)
> print b
>
> # This works
> c=date2num(a)
> print c
>
> # This fails
> d=date2num(b)
> print d
>
> The output and failure message is:
>
> 2005-10-10 05:05:05
> 2005-10-10 05:05:05.00
> 732229.211863
I'm not sure what date2num() uses as epoch, but it looks like
some variant of a Julian Day Number:
>>> b.jdn
2453653.711863426
>>> b.tjd
3653.2118634259259
> Traceback (most recent call last):
> File "datetime-problem.py", line 20, in ?
> d=date2num(b)
> File "D:\apps\Python23\lib\site-packages\matplotlib\dates.py", line
> 174, in da
> te2num
> if not iterable(d): return _to_ordinalf(d)
> File "D:\apps\Python23\lib\site-packages\matplotlib\dates.py", line
> 137, in _t
> o_ordinalf
> base = dt.toordinal()
> AttributeError: toordinal
.toordinal() is a datetime method which is not supported by mxDateTime
instances.
--
Marc-Andre Lemburg
eGenix.com
Professional Python Services directly from the Source (#1, Jul 16 2006)
>>> Python/Zope Consulting and Support ... http://www.egenix.com/
>>> mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/
>>> mxODBC, mxDateTime, mxTextTools ... http://python.egenix.com/
________________________________________________________________________
::: Try mxODBC.Zope.DA for Windows,Linux,Solaris,FreeBSD for free ! ::::
More information about the egenix-users
mailing list