Python 属性错误:';dict';对象没有属性';绘图'; 来自IEX金融进口库存 将matplotlib.pyplot作为plt导入 tsla=库存(“tsla”) tsla.get_close() tsla.get_价格() 从IEX财务导入获取历史数据 从日期时间导入日期时间 作为pd进口熊猫 pd.set_选项('display.max_rows',1000) 开始=日期时间(2017年2月9日) 结束=日期时间(2017年5月24日) df=获取历史数据(“TSLA”,开始=开始,结束=结束,输出格式='json') df.plot() plt.show() --------------------------------------------------------------------------- AttributeError回溯(最近的调用) 最后) 在() 8. 9 df=获取历史数据(“TSLA”,开始=开始,结束=结束, 输出(格式为json) --->10 df.绘图() 11 plt.show() 12 df AttributeError:“dict”对象没有属性“plot”
我正试图获得数据帧的绘图,该数据帧从开始日期和结束日期以不同的价格创建。我试着阅读不同的博客,但似乎没有一个能解决这个问题。我确信我犯了一个非常基本的错误。尽管我无法找出我在这里做错了什么,但有什么建议可以解决吗?您不能直接在matplotlib中绘制词典。它需要x值和y值 您可以看到Python 属性错误:';dict';对象没有属性';绘图'; 来自IEX金融进口库存 将matplotlib.pyplot作为plt导入 tsla=库存(“tsla”) tsla.get_close() tsla.get_价格() 从IEX财务导入获取历史数据 从日期时间导入日期时间 作为pd进口熊猫 pd.set_选项('display.max_rows',1000) 开始=日期时间(2017年2月9日) 结束=日期时间(2017年5月24日) df=获取历史数据(“TSLA”,开始=开始,结束=结束,输出格式='json') df.plot() plt.show() --------------------------------------------------------------------------- AttributeError回溯(最近的调用) 最后) 在() 8. 9 df=获取历史数据(“TSLA”,开始=开始,结束=结束, 输出(格式为json) --->10 df.绘图() 11 plt.show() 12 df AttributeError:“dict”对象没有属性“plot”,python,matplotlib,plot,attributeerror,Python,Matplotlib,Plot,Attributeerror,我正试图获得数据帧的绘图,该数据帧从开始日期和结束日期以不同的价格创建。我试着阅读不同的博客,但似乎没有一个能解决这个问题。我确信我犯了一个非常基本的错误。尽管我无法找出我在这里做错了什么,但有什么建议可以解决吗?您不能直接在matplotlib中绘制词典。它需要x值和y值 您可以看到type(df)将是一个,其中包含如下值: from iexfinance import Stock import matplotlib.pyplot as plt tsla = Stock('TSLA') tsl
type(df)
将是一个
,其中包含如下值:
from iexfinance import Stock
import matplotlib.pyplot as plt
tsla = Stock('TSLA')
tsla.get_close()
tsla.get_price()
from iexfinance import get_historical_data
from datetime import datetime
import pandas as pd
pd.set_option('display.max_rows', 1000)
start = datetime(2017, 2, 9)
end = datetime(2017, 5, 24)
df = get_historical_data("TSLA", start=start, end=end, output_format='json')
df.plot()
plt.show()
---------------------------------------------------------------------------
AttributeError Traceback (most recent call
last)
<ipython-input-16-77b5455be846> in <module>()
8
9 df = get_historical_data("TSLA", start=start, end=end,
output_format='json')
---> 10 df.plot()
11 plt.show()
12 df
AttributeError: 'dict' object has no attribute 'plot'
{'TSLA':{'2017-02-09':{'open':266.25,'high':271.18,'low':266.15,'close':269.2,'volume':7820222}
因此,如果您想将其绘制成图形,需要将其转换为数据帧
您的代码必须更改如下:
from iexfinance import Stock
import matplotlib.pyplot as plt
tsla = Stock('TSLA')
tsla.get_close()
tsla.get_price()
from iexfinance import get_historical_data
from datetime import datetime
import pandas as pd
pd.set_option('display.max_rows', 1000)
start = datetime(2017, 2, 9)
end = datetime(2017, 5, 24)
df = get_historical_data("TSLA", start=start, end=end, output_format='json')
df.plot()
plt.show()
---------------------------------------------------------------------------
AttributeError Traceback (most recent call
last)
<ipython-input-16-77b5455be846> in <module>()
8
9 df = get_historical_data("TSLA", start=start, end=end,
output_format='json')
---> 10 df.plot()
11 plt.show()
12 df
AttributeError: 'dict' object has no attribute 'plot'
您将得到如下图形:
from iexfinance import Stock
import matplotlib.pyplot as plt
tsla = Stock('TSLA')
tsla.get_close()
tsla.get_price()
from iexfinance import get_historical_data
from datetime import datetime
import pandas as pd
pd.set_option('display.max_rows', 1000)
start = datetime(2017, 2, 9)
end = datetime(2017, 5, 24)
df = get_historical_data("TSLA", start=start, end=end, output_format='json')
df.plot()
plt.show()
---------------------------------------------------------------------------
AttributeError Traceback (most recent call
last)
<ipython-input-16-77b5455be846> in <module>()
8
9 df = get_historical_data("TSLA", start=start, end=end,
output_format='json')
---> 10 df.plot()
11 plt.show()
12 df
AttributeError: 'dict' object has no attribute 'plot'
似乎
get_historical_data
返回dict。尝试执行:df=pd.DataFrame(get_historical_data(“TSLA”,start=start,end=end,output_format='json'))
。这给了我类型错误:空的“DataFrame”:没有数字数据来打印错误请添加有关df
的信息。它包含什么价值?谢谢,它成功了。我必须更新pandas以使columns命令正常工作,但它做到了。:)