Erreur de type Pandas en essayant de tracer

Je suis en train de créer une base de nuage de points basé sur une Pandas dataframe. Mais quand je l'appelle l'éparpillement de la routine, j'obtiens une erreur "TypeError: invalid type de promotion". Exemple de code pour reproduire le problème est indiqué ci-dessous:

t1 = pd.to_datetime('2015-11-01 00:00:00')
t2 = pd.to_datetime('2015-11-02 00:00:00')

Time = pd.Series([t1, t2])
r = pd.Series([-1, 1])

df = pd.DataFrame({'Time': Time, 'Value': r})
print(df)

print(type(df.Time))
print(type(df.Time[0]))

fig = plt.figure(figsize=(x_size,y_size))
ax = fig.add_subplot(111)
ax.scatter(df.Time, y=df.Value, marker='o')

Le résultat est

        Time  Value
0 2015-11-01     -1
1 2015-11-02      1
<class 'pandas.core.series.Series'>
<class 'pandas.tslib.Timestamp'>

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-285-f4ed0443bf4d> in <module>()
     15 fig = plt.figure(figsize=(x_size,y_size))
     16 ax = fig.add_subplot(111)
---> 17 ax.scatter(df.Time, y=df.Value, marker='o')

C:\Anaconda3\lib\site-packages\matplotlib\axes\_axes.py in scatter(self, x,    y, s, c, marker, cmap, norm, vmin, vmax, alpha, linewidths, verts, **kwargs)
   3635             edgecolors = 'face'
   3636 
-> 3637         offsets = np.dstack((x, y))
   3638 
   3639         collection = mcoll.PathCollection(

C:\Anaconda3\lib\site-packages\numpy\lib\shape_base.py in dstack(tup)
    365 
    366     """
--> 367     return _nx.concatenate([atleast_3d(_m) for _m in tup], 2)
    368 
    369 def _replace_zero_by_x_arrays(sub_arys):

TypeError: invalid type promotion

Recherche j'ai trouvé un poste similaire Les Pandas de la Série TypeError et ValueError lors de l'utilisation de datetime qui suggère que l'erreur est provoquée par le fait d'avoir plusieurs types de données dans la série. Mais cela ne semble pas être la question dans mon exemple, comme en témoigne le type d'informations je suis à l'impression.

Remarque que si j'arrête d'utiliser les pandas datetime objets et faire le "Temps" d'un flotteur au lieu de cela fonctionne très bien, par exemple,

t1 = 1.1 #
t2 = 1.2

Time = pd.Series([t1, t2])
r = pd.Series([-1, 1])

df = pd.DataFrame({'Time': Time, 'Value': r})
print(df)

print(type(df.Time))
print(type(df.Time[0]))

fig = plt.figure(figsize=(x_size,y_size))
ax = fig.add_subplot(111)
ax.scatter(df.Time, y=df.Value, marker='o')

avec sortie

   Time  Value
0   1.1     -1
1   1.2      1
<class 'pandas.core.series.Series'>
<class 'numpy.float64'>

et le graphique semble un peu fine. Je suis à une perte pour expliquer pourquoi l'utilisation d'un datetime est à l'origine de la non valide la promotion du type d'erreur? Je suis à l'aide de Python 3.4.3 et les pandas 0.16.2.

source d'informationauteur Tom Johnson