【发布时间】:2014-09-02 16:14:32
【问题描述】:
我的图例与线条颜色不匹配。知道我如何解决这个问题以及我做错了什么吗?该代码从 yahoo Finance 下载数据,因此您应该能够在您的机器上按原样运行它并自己查看数据。感谢您的帮助!
import pandas.io.data as web
import datetime
import pandas as pd
import matplotlib.pyplot as plt
start = '5/1/2007'
end = '10/1/2007'
event = datetime.date(2007,6,27)
companies = ['AAPL','MSFT','BBRY','IBM']
all_data = {}
for ticker in companies:
all_data[ticker] = web.get_data_yahoo(ticker, start,end)
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()})
rels = price/price.ix[event]
plt.figure(figsize=(15,5))
for i in companies:
plt.plot(rels.index,rels[i],label=i,lw=4.0)
plt.legend(companies,loc='upper left')
plt.axvline(x=event)
plt.grid(True)
plt.show()
编辑:我注意到图例正在拾取 axvline,所以我将它移到图例之后,并按照 cmets 中的建议通过循环生成单独的绘图语句,但看起来这些行与中的正确名称不匹配传说。
【问题讨论】:
标签: python matplotlib