将横坐标改为对应的日期
时间: 2023-10-27 21:04:35 浏览: 38
好的,将横坐标改为对应的日期可以按照以下步骤进行:
1. 首先,将日期列设置为 DataFrame 的索引,可以使用 pandas 的 `set_index()` 函数,例如:
```python
df = pd.read_excel('stocks.xlsx', usecols=[0, 1, 2, 3, 4, 5], index_col=0)
```
这个函数将第一列设置为索引列,也就是日期列。
2. 对每支股票的收盘价进行计算,得到每日的涨跌幅,可以使用 pandas 的 `pct_change()` 函数,例如:
```python
change = df.pct_change()
```
这个函数将计算每一列中相邻两个元素的百分比变化,也就是涨跌幅。注意,由于第一行没有前一个元素,所以第一行会被设置为 NaN。
3. 使用 matplotlib 库绘制图表,可以使用 `plot()` 函数,例如:
```python
change.plot()
plt.xlabel('Date')
plt.ylabel('Change')
plt.title('Stock Prices Change')
plt.legend(loc='upper left')
plt.show()
```
这个代码将绘制出一个包含每支股票每日涨跌幅的折线图,其中每条折线代表一支股票的涨跌幅。图表上添加了横坐标标签 "Date",纵坐标标签 "Change",标题 "Stock Prices Change",以及图例 "upper left"。
注意,由于横坐标是日期,可能会比较密集,可以使用 matplotlib 的 `autoscale()` 函数自动缩放横坐标的范围,例如:
```python
plt.autoscale(enable=True, axis='x', tight=True)
```
这个函数将自动缩放横坐标的范围,以适应日期的密集程度。
这样,你就可以得到一个包含每支股票每日涨跌幅的表格,并将其绘制成图表展示出来,横坐标为对应的日期。