Canvas绘制股票K线图
最近想在小程序做股票K线图,于是尝试用Canvas实现股票K线图。 K线图用到Canvas的API其实只有划线和画矩形,即moveTo(),lineTo(),fillRect()等函数。 第一步,我们先定义K线类: function Bar(open,high,low,close,width){ this.open = open; this.high = high; this.low = low; this.close = close; this.width = width | 5; } 输入参数分别表示开盘价,最高价,最低价,收盘价,K线宽度。 K线类定义一个绘制函数: Bar.prototype.draw = function(pen,x,base,frag,screen){ //根据base,frag计算坐标 var _open = screen - (this.open - base)*frag - 10; var _high = screen - (this.high - base)*frag - 10; var _low = screen - (this.low - base)*frag - 10; var _close = screen - (this.close - base)*frag - 10; //根据base,frag画K线 pen.save(); if