如何从investpy导入然后绘图?
How to import from investpy and then plot?
我想从某个日期获取纳斯达克的漂亮折线图(来自 investpy 的数据),但由于某种原因,该图没有显示(即使它运行没有错误)
import investpy as inv
import matplotlib.pyplot as plt
import pandas as pd
TICKER = "Nasdaq 100"
COUNTRY = "United States"
FROM_DATE = "01/03/2022"
TO_DATE = "07/03/2022"
historical_data = inv.indices.get_index_historical_data(index=TICKER,
country=COUNTRY,
from_date=FROM_DATE,
to_date=TO_DATE)
data = historical_data.reset_index()
data.plot(x = 'Date', y = 'Close')
print(data)
plt.show
这是打印函数中数据框的样子。
Date Open High Low Close Volume Currency
0 1985-09-26 110.64 110.64 110.64 110.64 0 USD
1 1985-09-27 110.64 110.64 110.64 110.64 0 USD
2 1985-09-30 110.62 110.62 110.62 110.62 0 USD
3 1985-10-01 112.14 112.14 112.14 112.14 0 USD
4 1985-10-02 110.84 110.84 110.84 110.84 0 USD
... ... ... ... ... ... ... ...
9181 2022-03-01 14197.66 14271.54 13907.94 14005.99 262503616 USD
9182 2022-03-02 14072.79 14290.67 13974.40 14243.69 232912464 USD
9183 2022-03-03 14335.16 14341.12 13965.59 14035.21 230210736 USD
9184 2022-03-04 13957.60 13992.81 13738.61 13837.83 244425040 USD
9185 2022-03-07 13855.48 13876.28 13314.68 13319.38 304169408 USD
[9186 rows x 7 columns]
你能告诉我我做错了什么吗?
提前致谢...
这应该有效:
import investpy as inv
import matplotlib.pyplot as plt
import pandas as pd
TICKER = "Nasdaq 100"
COUNTRY = "United States"
FROM_DATE = "01/03/2022"
TO_DATE = "07/03/2022"
historical_data = inv.indices.get_index_historical_data(index=TICKER,
country=COUNTRY,
from_date=FROM_DATE,
to_date=TO_DATE)
data = historical_data.reset_index()
data.plot(x = 'Date', y = 'Close')
print(data)
plt.show()
我只在末尾添加了括号,因为如果那样调用 plt.show
将不起作用。只有当你像 plt.show()
.
这样称呼它时它才会起作用
我建议使用 DataFrame.plot.line
"Plot Series 或 DataFrame 作为线条。
此函数对于使用 DataFrame 的 值作为坐标绘制线条很有用。"
您可以使用:
data.plot.line(x='Date', y='Close')
# or a simple call
data.plot.line()
我想从某个日期获取纳斯达克的漂亮折线图(来自 investpy 的数据),但由于某种原因,该图没有显示(即使它运行没有错误)
import investpy as inv
import matplotlib.pyplot as plt
import pandas as pd
TICKER = "Nasdaq 100"
COUNTRY = "United States"
FROM_DATE = "01/03/2022"
TO_DATE = "07/03/2022"
historical_data = inv.indices.get_index_historical_data(index=TICKER,
country=COUNTRY,
from_date=FROM_DATE,
to_date=TO_DATE)
data = historical_data.reset_index()
data.plot(x = 'Date', y = 'Close')
print(data)
plt.show
这是打印函数中数据框的样子。
Date Open High Low Close Volume Currency
0 1985-09-26 110.64 110.64 110.64 110.64 0 USD
1 1985-09-27 110.64 110.64 110.64 110.64 0 USD
2 1985-09-30 110.62 110.62 110.62 110.62 0 USD
3 1985-10-01 112.14 112.14 112.14 112.14 0 USD
4 1985-10-02 110.84 110.84 110.84 110.84 0 USD
... ... ... ... ... ... ... ...
9181 2022-03-01 14197.66 14271.54 13907.94 14005.99 262503616 USD
9182 2022-03-02 14072.79 14290.67 13974.40 14243.69 232912464 USD
9183 2022-03-03 14335.16 14341.12 13965.59 14035.21 230210736 USD
9184 2022-03-04 13957.60 13992.81 13738.61 13837.83 244425040 USD
9185 2022-03-07 13855.48 13876.28 13314.68 13319.38 304169408 USD
[9186 rows x 7 columns]
你能告诉我我做错了什么吗?
提前致谢...
这应该有效:
import investpy as inv
import matplotlib.pyplot as plt
import pandas as pd
TICKER = "Nasdaq 100"
COUNTRY = "United States"
FROM_DATE = "01/03/2022"
TO_DATE = "07/03/2022"
historical_data = inv.indices.get_index_historical_data(index=TICKER,
country=COUNTRY,
from_date=FROM_DATE,
to_date=TO_DATE)
data = historical_data.reset_index()
data.plot(x = 'Date', y = 'Close')
print(data)
plt.show()
我只在末尾添加了括号,因为如果那样调用 plt.show
将不起作用。只有当你像 plt.show()
.
我建议使用 DataFrame.plot.line
"Plot Series 或 DataFrame 作为线条。
此函数对于使用 DataFrame 的 值作为坐标绘制线条很有用。"
您可以使用:
data.plot.line(x='Date', y='Close')
# or a simple call
data.plot.line()