如何根据文件中的数据绘制多个股票指数从1996年到2022年的收盘价走势图
时间: 2024-03-17 21:47:02 浏览: 77
要根据文件中的数据绘制多个股票指数从1996年到2022年的收盘价走势图,可以使用 Python 中的 Pandas 和 Matplotlib 库。以下是一个简单的示例代码:
1. 首先,读取包含股票数据的 CSV 文件:
```python
import pandas as pd
# 读取 CSV 文件
df = pd.read_csv('stocks.csv')
```
其中,`stocks.csv` 是包含股票数据的 CSV 文件,需要根据实际情况修改文件名。
2. 对数据进行处理,选取需要绘制的股票代码和时间范围,并将数据按照股票代码进行分组:
```python
# 选取需要绘制的股票代码和时间范围
stocks = ['AAPL', 'GOOG', 'MSFT', 'AMZN']
start_date = '1996-01-01'
end_date = '2022-01-01'
# 将数据按照股票代码进行分组
data = df[df['Symbol'].isin(stocks) & (df['Date'] >= start_date) & (df['Date'] < end_date)]
data = data.groupby('Symbol')['Close'].apply(list)
```
其中,`Symbol` 表示股票代码,`Close` 表示收盘价,`Date` 表示日期。代码会选取股票代码为 AAPL、GOOG、MSFT 和 AMZN,时间范围为 1996 年到 2022 年,然后将数据按照股票代码进行分组,每个股票对应一个收盘价列表。
3. 绘制多个股票指数的走势图:
```python
import matplotlib.pyplot as plt
# 绘制股票走势图
plt.figure(figsize=(12,6))
for stock in stocks:
plt.plot(data[stock], label=stock)
plt.title('股票走势图')
plt.xlabel('日期')
plt.ylabel('收盘价')
plt.legend()
plt.show()
```
代码会根据分组后的数据绘制多个股票指数的走势图,其中每个股票对应一个线条,并且在图例中显示股票代码。你可以根据需要修改代码中的股票代码列表、时间范围和绘图的样式。
阅读全文