中画图title函数_python3画K线图——自定义函数(静态+动态)

本文介绍了如何在Python3中自定义K线图函数,包括从matplotlib原有的candlesticks函数中抽取核心代码进行封装,便于后期调整。同时,还展示了使用bokeh库创建动态K线图,并提供了保存为html实现用户交互的功能。
摘要由CSDN通过智能技术生成

基本画图简介

matplotlib中原来有candlesticks函数画K线图,后来该函数被移出matplotlib.finance库。

现状是 画K线图函数在模块candlestick_ohlc中,但后期想自定义K线图不方便(例如在K线图中添加几个文本备注)。

特此,查看原candlesticks函数源码后,抽取核心代码封装成函数,方便后期调整K线图。

from matplotlib.lines import Line2D
from matplotlib.patches import Rectangle

def candlestick_K(ax, quotes, width=0.2, colorup='k', colordown='r', alpha=1):
    '''
    ax:坐标轴
    quotes:zip(索引, 开盘价, 最高价, 最低价, 收盘价)
    colorup:上涨Kbar的颜色
    colordown:下跌kbar的颜色
    alpha:K线阴影值
    
    return:
    lines:线对象
    patch:矩阵对象
    '''
    OFFSET = width/2.0
    
    lines = []
    patches = []
    for q in quotes:
        t, open, high, low, close = q[:5]
    	# 判断该Kbar是涨是跌从而决定颜色
        if close >= open:
            color = colorup
            lower = open
            height = close - open
        else:
            color = colordown
            lower = close
            height = open - close
        # 线图图形   
        vline = Line2D(
        	xdata=(t, t), ydata=(low,high),
        	color=color,
        	linewidth=0.5,
        	antialiased=True,
        )
        # 矩阵图形
        rect = Rectangle(
        	xy = (t-OFFSET, lower),
        	width = width,
        	height = height,
        	facecolor = color,
        	edgecolor = color,
        )
        rect.set_alpha(alpha)
        
        lines.append(vline)
        patches.append(rect)
        ax.add_line(vline)
        ax.add_patch(rect)
    ax.autoscale_view()
    
    return lines, patches

高级画图简介

<
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值