引用讯飞星火
你可以尝试使用以下代码来绘制两个股票的K线图并保存在同一张图片中:
import pandas as pd
import mplfinance as mpf
import matplotlib.pyplot as plt
# 模拟两个股票的数据
data_stock_a = pd.DataFrame({
'Open': [100, 101, 102, 103, 102.5],
'High': [101, 102, 103, 104, 103],
'Low': [99, 100, 101, 102, 101.5],
'Close': [101, 102, 103, 102.5, 102],
'Volume': [1000, 1100, 1200, 1150, 1250]
}, index=pd.date_range(start='2023-01-01', periods=5))
data_stock_b = pd.DataFrame({
'Open': [200, 201, 202, 203, 202.5],
'High': [201, 202, 203, 204, 203],
'Low': [199, 200, 201, 202, 201.5],
'Close': [201, 202, 203, 202.5, 202],
'Volume': [2000, 2100, 2200, 2150, 2250]
}, index=pd.date_range(start='2023-01-01', periods=5))
# 创建两个子图的布局
fig, axs = plt.subplots(nrows=2, ncols=1, figsize=(10, 8))
# 在第一个子图上绘制第一个股票的蜡烛图和交易量图
mpf.plot(data_stock_a, type='candle', volume=axs[0], mav=(5, 'd'), ax=axs[0])
axs[0].legend(['Volume'])
# 在第二个子图上绘制第二个股票的蜡烛图和交易量图
mpf.plot(data_stock_b, type='candle', volume=axs[1], mav=(5, 'd'), ax=axs[1])
axs[1].legend(['Volume'])
# 调整子图之间的间距
plt.tight_layout()
# 显示图表
plt.show()
这段代码将会绘制两个股票的K线图,并将它们保存在同一张图片中。同时,均线MA5用虚线表示。