K 线图是金融市场中常用的技术分析工具,可以直观地展示股票价格的走势和波动情况。本文将介绍如何使用 Python 和 akshare、mplfinance 库来获取东方财富网的股票日线数据并绘制 K 线图。
代码
import akshare as ak
import mplfinance as mpf
import pandas as pd
import matplotlib.pyplot as plt
# 设置 Matplotlib 支持中文显示
plt.rcParams['font.sans-serif'] = ['Microsoft YaHei'] # 设置中文字体,确保中文能够正常显示
plt.rcParams['axes.unicode_minus'] = False # 解决负号 '-' 显示为方块的问题
def get_stock_data_eastmoney(symbol, start_date, end_date):
# 使用 akshare 的 stock_zh_a_hist 函数获取东方财富网的股票日线数据
df = ak.stock_zh_a_hist(symbol=symbol, period="daily", start_date=start_date, end_date=end_date, adjust="qfq")
# 检查获取的 DataFrame 是否为空
if df.empty:
print("未获取到数据,请检查股票代码及日期范围是否正确。")
return
# 将日期列设置为索引,并转换为 datetime 类型
df['日期'] = pd.to_datetime(df['日期'])
df.set_index('日期', inplace=True)
# 调整 DataFrame 列名以符合