matplotlib(5. 股票K线图)

python3,matplot3,绘制K线图,与2版本绘制蜡烛图存在区别

import os
import pandas as pd
import matplotlib.pyplot as plt
import mpl_finance as mpf
from pandas.plotting import register_matplotlib_converters
register_matplotlib_converters()

# 设置总体样式
plt.style.use("ggplot")

# 数据来源
datadir = 'yahoo-data'
fname = '002001.csv'
data = pd.read_csv(os.path.join(datadir, fname), index_col='Date', parse_dates=True)

# 单独取出volume数据绘图使用
vol = data['Volume']

# 设置两个图的位置
left, width = 0.1, 0.8
rect_vol = [left, 0.1, width, 0.3]
rect_main = [left, 0.46, width, 0.5]

# 创建画布
fig = plt.figure()

# 添加两个坐标轴
ax_vol = fig.add_axes(rect_vol)
ax_main = fig.add_axes(rect_main)

# 填充volume图
ax_vol.fill_between(vol.index, vol.values, color='y')

# 设置x轴显示样式
plt.setp(ax_vol.get_xticklabels(), rotation=30, horizontalalignment='right')

# 替换timestamp to float
main_data = []
for d in data.reset_index().values:
    d[0] = d[0].timestamp()
    main_data.append((d[0], d[1], d[2], d[3], d[4]))

print(main_data)
# 绘制蜡烛图
mpf.candlestick_ohlc(ax_main, main_data, width=30000, colorup='r', colordown='g')

plt.xticks([])
plt.show()

在这里插入图片描述

发布了45 篇原创文章 · 获赞 2 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_22096121/article/details/103589987