python的 mpl_finance模块从已经提醒弃用,现在用 mplfinance模块.
安装pip install --upgrade mplfinance
mpf_kline.py
# coding: utf-8import os, sysimport datetimeimport matplotlib.pyplot as pltimport mplfinance as mpfimport pandas as pdimport tushare as ts##绘制K线图+移动平均线if len(sys.argv) ==2:code = sys.argv[1]else:print('usage: python mpf_kline.py stockcode ')sys.exit(1)if len(code) !=6:print('stock code length: 6')sys.exit(2)# help(ts.get_k_data) 了解参数df = ts.get_k_data(code)df = df[ df['date'] >'-01-01']#print(df.tail())if len(df) <10:print(" len(df) <10 ")sys.exit(2)df.index = pd.to_datetime(df.date)#print(mpf.available_styles()) #mpf.plot(df, style='charles', mav=(5,10,20), volume=True, title=code)#mpf.plot(df, type='line', mav=(5,10,20), title=code)# 绘制K线图my_color = mpf.make_marketcolors(up='red', down='green', edge='black', wick='black', volume='cyan')my_style = mpf.make_mpf_style(marketcolors=my_color, gridaxis='both', gridstyle='-.', y_on_right=True)mpf.plot(df, type='candle', style=my_style, mav=(5,10,20), volume=True, title=code)
运行 pythonmpf_kline.py159938
plot绘图的部分参数
:type设置图像类型'ohlc'/'candle'/'line/renko'
:mav 绘制移动平均线
:show_nontrading= True 显示非交易日(k线之间有间隔),False 不显示交易日,k线之间没有间隔
:title:设置标题
:ylabel=设置主图Y轴标题
:ylabel_lower 设置成交量一栏Y坐标标题
:figratio:设置图形纵横比
:figscale 设置图像的缩小或放大,1.5就是放大50%,最大不会超过电脑屏幕大小
:style 设置整个图表样式,可以使用前面设置的样式my_style,只能在plot函数中使用指定整个图表样式,不能在make_addplot中使用。
savefig:导出图片,填写文件名及后缀
参考:Python的mpl_finance模块从已经提醒弃用,新mplfinance模块详解(一)_HHKJ 的博客-CSDN博客_mpl_finance模块
如果觉得《python:mplfinance 画K线图》对你有帮助,请点赞、收藏,并留下你的观点哦!