我在創建繪圖時以及將時間戳轉換爲日期時遇到問題。將時間戳轉換爲日期並在matplotlib中平等地繪製()
下面的代碼將雅虎財經的數據轉化爲熊貓數據框架。日期充當該文件中的數據集索引,看起來像這樣:
2007-05-01 00:00:00
首先,我想該索引轉換從日期時間爲日期格式,但更重要的是,我想弄清楚出來重現在下面的代碼從rels.plot()
獲得的曲線圖,使用matplotlib這樣我可以在給定日期添加的垂直線(格式不需要是完全一樣的。)
import pandas.io.data as web
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline
all_data = {}
for ticker in ['AAPL','MSFT']:
all_data[ticker] = web.get_data_yahoo(ticker, '5/1/2007','10/1/2007')
price = pd.DataFrame({tic:data['Adj Close']
for tic, data in all_data.iteritems()})
volume = pd.DataFrame({tic:data['Volume']
for tic, data in all_data.iteritems()})
returns = price.pct_change()
rels = price/price.ix[0]
rels.plot()
plt.Line2D(rels.index,rels.AAPL)
plt.show()
上述下載的代碼的所有數據,以便您可以根據需要使用我在您的機器上使用的相同數據。現在,在我的機器上的IP [y]筆記本中,此代碼運行,但plt.show()不生成圖。該代碼應生成兩幅地塊(第一是參考圖表我想與matplotlib重新創建。)
做任何事情發生,或者它只是坐在那裏空白?另外,你有沒有嘗試過解決它?它對我來說工作得很好。 – 2014-09-01 21:37:45
它打印出這兩個地塊? – Chris 2014-09-01 21:45:37
就是這樣,謝謝!我應該一直在使用情節而不是Line2D。你知道我會如何去將eels.index轉換爲日期格式而不是日期時間嗎? – Chris 2014-09-01 22:51:52