新mplfinance模块详解(三)
Python的mpl_finance模块从2020年已经提醒弃用,新mplfinance模块详解(三)
目录(续三)
五、mplfinance系统样式的使用
系统样式有哪些
六、继承系统样式并局部自定义修改
七、字典传参
八、make_mpf_style方法的其他关键字参数
续:
Python的mpl_finance模块从2020年已经提醒弃用,新mplfinance模块详解(一)
Python的mpl_finance模块从2020年已经提醒弃用,新mplfinance模块详解(二)
mplfinance模块详解1、2、3源码+详细中文注释
五、mplfinance系统样式的使用
系统样式有哪些
# 输出全部系统样式print(mplfinance.available_styles())
输出结果:
['blueskies', 'brasil', 'charles', 'checkers', 'classic', 'default', 'mike', 'nightclouds', 'sas','starsandstripes', 'yahoo']
mpf.plot(data, style='blueskies')
mpf.plot(data, style='charles')
mpf.plot(data, style='mike')
这里就不一一展示了,用法很简单,其实就是在plot方法绘图时使用关键字惨style,这个参数前面提到过,当时只是为了把y刻度放到右边,不过也是使用了系统样式的效果。
六、继承系统样式并局部自定义修改
其实就是在继承系统样式的基础上按自己喜好进行 一些自定义修改的叠加:
my_color = mplfinance.make_marketcolors(up='cyan', down='red', edge='black', wick='i',volume={'up': 'blue', 'down': 'orange'}, ohlc='cyan')my_style = mpf.make_mpf_style(base_mpf_style='blueskies', marketcolors=my_color, gridaxis='both',gridstyle='-.', y_on_right=True)
首先是自定义一组样式my_color,在make_mpf_style方法传参时先使用关键字base_mpf_style传参一个系统样式,再使用marketcolors=my_color,这样自定义设置之外的样式全部使用系统样式了。
另外,这里需要在提一下make_marketcolors方法的关键字参数edge/wick/volume/ ohlc四个关键字参数除了设置i自动继承up和down外,也可以使用字典模式分别自定义,比如上面的volume={'up’: 'blue’, 'down’: 'orange’}。
七、字典传参
plot方法绘图接受的是关键字参数,前面都是使用了直接关键字传参,其实也可以定义一个字典,直接把字典传进去,例如:
kwargs = dict(type='candle', mav=(2, 5, 7), volume=True, title='报价', ylabel='price', ylabel_lower='volume',figratio=(10, 8), figscale=1.3, linecolor='g')mplfinance.plot(data.iloc[0:30, :], **kwargs, style='checkers')plt.show() # 显示
输出结果:
八、make_mpf_style方法的其他关键字参数
项目 | Value |
---|---|
base_mpf_style | 使用mplfinance中的系统样式 , 可以在make_marketcolors方法中使用,也可以在make_mpf_style中使用 |
base_mpl_style | 可以同时使用matplotlib中的系统样式,比如:base_mpl_style='seaborn’ |
marketcolors | 使用自定义样式 |
mavcolors | 设置ma均线颜色,必须使用列表传参 |
facecolor | 设置前景色 |
edgecolor | 图像边缘线颜色 |
figcolor | 图像外周围填充色 |
gridcolor | 网格线颜色 |
gridaxis | 设置网格线方向,both/ 'horizontal’/ 'vertical’ |
gridstyle | 设置网格线线型 '-’/'solid’, '–’/'dashed’, '-.’/'dashdot’, ':’/'dotted’, None/’ '/’’ |
y_on_right | 设置y轴位置是否在右 |
rc | 使用rcParams的dict设置样式,如果内容与上面的自定义设置相同,那么自定义设置覆盖rcParams设置 |
这里直接使用关键字传参即可,不做演示了,需要注意的是如果使用base_mpf_style和base_mpl_style两类系统样式,以及rc 设置的样式如果有其他自定义关键字参数冲突,那么关键字参数会覆盖这些样式的内容。