Parcelle pandas dates dans matplotlib
J'ai une largeur fixe de données fichier contenant des dates, mais lorsque je tente de tracer les données les dates ne sont pas affichés correctement sur l'axe des abscisses.
Mes fichiers ressemble
2014-07-10 11:49:14.377102 45
2014-07-10 11:50:14.449150 45
2014-07-10 11:51:14.521168 21
2014-07-10 11:52:14.574241 8
2014-07-10 11:53:14.646137 11
2014-07-10 11:54:14.717688 14
etc
et j'utilise pandas à lire dans le fichier
#! /usr/bin/env python
import pandas as pd
import matplotlib.pyplot as plt
data = pd.read_fwf('myfile.log',header=None,names=['time','amount'],widths=[27,5])
data.time = pd.to_datetime(data['time'], format='%Y-%m-%d %H:%M:%S.%f')
plt.plot(data.time,data.amount)
plt.show()
Donc je suppose que le problème ici, c'est la conversion de pandas à matplotlib datetime, Comment pourrait-on faire une conversion?
J'ai aussi essayé avec des pandas directement:
data.time = pd.to_datetime(data['time'], format='%Y-%m-%d %H:%M:%S.%f')
data.set_index('time') # Fails!!
data.time.plot()
mais cela échoue avec
TypeError: Vide "Série": pas de données numériques à la parcelle
OriginalL'auteur Gerhard | 2014-08-21
Vous devez vous connecter pour publier un commentaire.
Si vous utilisez une liste contenant le nom de la colonne(s) au lieu d'une chaîne de données.set_index travaillera
Les éléments suivants doivent apparaître les dates sur l'axe des x:
OriginalL'auteur Osmond Bishop