Poniżej Mam następujący skrypt, który tworzy prosty szeregów czasowych działki:Seaborn tsplot nie pokazuje datetimes na X osi studni
%matplotlib inline
import datetime
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
df = []
start_date = datetime.datetime(2015, 7, 1)
for i in range(10):
for j in [1,2]:
unit = 'Ones' if j == 1 else 'Twos'
date = start_date + datetime.timedelta(days=i)
df.append({
'Date': date.strftime('%Y%m%d'),
'Value': i * j,
'Unit': unit
})
df = pd.DataFrame(df)
sns.tsplot(df, time='Date', value='Value', unit='Unit', ax=ax)
fig.autofmt_xdate()
a wynik ten jest następujący:
Jak widać oś X zawiera dziwne liczby dla dat, które nie są zwykłymi "ładnymi" reprezentacjami, które pochodzą z matplotlib
i innych narzędzi do kreślenia. Próbowałem już wielu rzeczy, zmieniając format danych, ale nigdy nie wychodzi na jaw. Ktoś zna drogę?
otrzymuję ten błąd: OverflowError: Python int zbyt duży do konwersji C długich – kurious
działa na moim boku. Czy używasz mojego dokładnego przykładu? Może musisz zaktualizować swoją dystrybucję. – hitzg
@kurious: Otrzymuję coś podobnego: 'OverflowError: liczba całkowita ze znakiem jest większa niż maksymalna' od matplotlib/dates.pyc (linia 214) w _from_ordinalf (x, tz). Po prostu zainstaluj pip na Linuksie z Pythonem 2.7. –