2017-12-18 26 views
1

私の現在のグラフでは、すべてのデータが正しく表示されています。Pythonでmatplotlibのx軸データフレームを設定する際の問題

グラフにx軸を設定する際に問題があります。私のコードは以下の通りです:

prices['Timestamp'] = pd.to_datetime(prices['Timestamp'], format='%Y-%m-%d %H:%M:%S') 
prices['Timestamp'] = pd.DatetimeIndex(prices['Timestamp']) 
prices.index = pd.to_datetime(prices['Timestamp'], format='%Y-%m-%d %H:%M:%S') 


prices['Close'].plot() 

plt.set_xlim([datetime.date(2017, 12, 17), datetime.date(2017, 12, 18)]) 


plt.legend() 
plt.show() 

これは私にエラー

Blockquote AttributeError: module 'matplotlib.pyplot' has no attribute 'set_xlim'

を与え、私は本当に私のグラフは、最新の時間に2017年12月17日午後09時00分00秒からするタイムスタンプを表示したいです。あなたが必要と思わ

print(prices['Close'] 

2017-12-18 07:13:00 3.030000e-06 
2017-12-18 07:14:00 3.020000e-06 
2017-12-18 07:15:00 3.030000e-06 
2017-12-18 07:16:00 3.040000e-06 

おかげ

答えて

1

#set column to datetime 
prices['Timestamp'] = pd.to_datetime(prices['Timestamp'], format='%Y-%m-%d %H:%M:%S') 
#set index from column 
prices = prices.set_index('Timestamp') 
#plot column, return matplotlib AxesSubplot object 
ax = prices['Close'].plot() 
#set xlim 
ax.set_xlim([datetime.date(2017, 12, 17), datetime.date(2017, 12, 18)]) 

plt.show() 
+0

私はまだ日付のフルレンジを取得データの

サンプルは次のようになります。また、私は2017-12-17 22:00:00から最新の時刻(日付だけではない)までしか必要としません。 –

+0

難しい質問ですが、 'ax.set_xlim([datetime.date(2017,12,17,22,0,0)、df.index.max()])'はどうでしょうか? – jezrael

関連する問題