Hi all,
I get a ValueError, if I try to plot a list of numpy.nans against
datetime objects. I'm using Python 2.6.5 and Matplotlib 1.0.1 on Ubuntu
Linux 10.04. Code and traceback are below.
Best regards,
Gerrit
Code
""""
import matplotlib.pyplot as plt
import numpy as np
from datetime import datetime as DateTime
t = [DateTime(2011,1,day) for day in xrange(1,20)]
x = [np.nan for i in xrange(1,20)]
plt.plot(t,x)
plt.show()
Traceback
"""""""""
Exception in Tkinter callback
Traceback (most recent call last):
File "/usr/lib/python2.6/lib-tk/Tkinter.py", line 1413, in __call__
return self.func(*args)
File
"/usr/local/lib/python2.6/dist-packages/matplotlib/backends/backend_tkagg.py", line 245, in resize
self.show()
File
"/usr/local/lib/python2.6/dist-packages/matplotlib/backends/backend_tkagg.py", line 248, in draw
FigureCanvasAgg.draw(self)
File
"/usr/local/lib/python2.6/dist-packages/matplotlib/backends/backend_agg.py", line 394, in draw
self.figure.draw(self.renderer)
File "/usr/local/lib/python2.6/dist-packages/matplotlib/artist.py",
line 55, in draw_wrapper
draw(artist, renderer, *args, **kwargs)
File "/usr/local/lib/python2.6/dist-packages/matplotlib/figure.py",
line 798, in draw
func(*args)
File "/usr/local/lib/python2.6/dist-packages/matplotlib/artist.py",
line 55, in draw_wrapper
draw(artist, renderer, *args, **kwargs)
File "/usr/local/lib/python2.6/dist-packages/matplotlib/axes.py", line
1946, in draw
a.draw(renderer)
File "/usr/local/lib/python2.6/dist-packages/matplotlib/artist.py",
line 55, in draw_wrapper
draw(artist, renderer, *args, **kwargs)
File "/usr/local/lib/python2.6/dist-packages/matplotlib/axis.py", line
971, in draw
tick_tups = [ t for t in self.iter_ticks()]
File "/usr/local/lib/python2.6/dist-packages/matplotlib/axis.py", line
904, in iter_ticks
majorLocs = self.major.locator()
File "/usr/local/lib/python2.6/dist-packages/matplotlib/dates.py",
line 743, in __call__
self.refresh()
File "/usr/local/lib/python2.6/dist-packages/matplotlib/dates.py",
line 752, in refresh
dmin, dmax = self.viewlim_to_dt()
File "/usr/local/lib/python2.6/dist-packages/matplotlib/dates.py",
line 524, in viewlim_to_dt
return num2date(vmin, self.tz), num2date(vmax, self.tz)
File "/usr/local/lib/python2.6/dist-packages/matplotlib/dates.py",
line 289, in num2date
if not cbook.iterable(x): return _from_ordinalf(x, tz)
File "/usr/local/lib/python2.6/dist-packages/matplotlib/dates.py",
line 203, in _from_ordinalf
dt = datetime.datetime.fromordinal(ix)
ValueError: ordinal must be >= 1