You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Matplotlib绘制AAPL收盘价时坐标轴输出错误如何解决

问题原因

  • 调用plt.plot()时仅传入了收盘价序列,未指定x轴为日期列,matplotlib默认使用DataFrame整数索引作为x轴,导致日期无法正常展示
  • yfinance返回的数据集默认索引已经是datetime64类型的日期,多余的reset_index和日期格式转换操作非必需,也可能引发格式匹配问题

修复方案

修改后的可运行代码如下:

import pandas as pd
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
%matplotlib inline
import seaborn as sns
sns.set()
import yfinance as yf

# 下载数据,返回结果默认索引即为标准日期格式,无需额外转换
df = yf.download('AAPL',
                 start='2001-01-01',
                 end='2005-12-31',
                 progress=False)
df.dropna(how='any', inplace=True)

plt.figure(figsize=(10,6))
plt.grid(True)
plt.xlabel('Dates')
plt.ylabel('Prices')
# 显式指定x轴为日期索引、y轴为收盘价
plt.plot(df.index, df['Close'])
# 自动调整日期刻度格式,避免标签重叠
plt.gcf().autofmt_xdate()
plt.title('AAPL Close Price', fontsize=16)
plt.show()

如果需要保留原代码中手动处理日期列的逻辑,仅需将绘图行修改为plt.plot(df['Date'], df['Close'])即可解决坐标轴显示异常问题。

内容的提问来源于stack exchange,提问作者Wind

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 19:06:03