Matplotlib ile bir pandalar zaman serisi nesnesini data
çizmek istiyorum. Basit bir çizgi grafik data.plot()
için, x ekseni tarih formatını ax.xaxis.set_major_formatter(md.DateFormatter('%Y-%m-%d %H:%M:%S'))
ile başarıyla değiştirebildim. Ancak, data.plot(kind='bar')
çubuk grafik için aynı şeyi yapamıyorum. Ve grafik görünmezdi. Pandalar çubuk grafik için veri formatını değiştirmek için bir yolu var mı? Plt.bar yöntemiyle bir grafik oluşturabileceğimi biliyorum, ancak daha karmaşık veriler için pandaların yığılmış çubuk grafiğini kullanmam gerekiyor.Pandas çubuk grafiğinde x ekseni DateFormat ayarlanamıyor
import matplotlib.pyplot as plt
import matplotlib.dates as md
import numpy as np
import pandas as pd
import datetime as dt
import time
n=20
duration=1000
now=time.mktime(time.localtime())
timestamps=np.linspace(now,now+duration,n)
dates=[dt.datetime.fromtimestamp(ts) for ts in timestamps]
values=np.sin((timestamps-now)/duration*2*np.pi)
data=pd.Series(values, index=dates)
fig=figure(figsize(5,5))
ax=fig.add_subplot(111)
data.plot(kind='bar')
ax.xaxis.set_major_formatter(md.DateFormatter('%Y-%m-%d %H:%M:%S'))
teşekkürler. Görüyorum ki 'ax.set_xticklabels' pandas komplosu için bile çalışıyor. – KLI
Bu, "groupby" ile gruplandırılmış panda DataFrames için çalışmıyor: AttributeError: 'MultiIndex' nesnesinin 'to_pydatetime' özelliği yoktur. – mjp