微信小程序中如何使用canvas制作K线


这篇文章主要介绍了微信小程序中如何使用canvas制作K线,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。前言:我们目的是想要一条平滑的曲线来表示均线等,而不是一条转折点明显的折线。因此还得继续探索api。我们发现,在canvas API中,能够画出曲线的有2个这两个api都是通过贝塞尔曲线来绘制路径。好在学习PS的时候,对贝塞尔曲线的具体表现也是有一定的熟练程度的,因此知道要确定一条由多个点组成的曲线路径,每一个转折点都得有2个控制点来控制曲线的表现而在曲线的起点和终点,就只能有一个控制点了。因此,我们在绘制起点和终点时,得使用quadraticCurveTo,绘制中间的点,则使用beZierCurveTo。现在的难点是,如何通过已知的要经过的点,计算出他们的控制点?为了找到一个行之有效的公式,于是草稿走起。没想到告别高中数学那么多年,凭着一点点的记忆,花了一上午,强行搞了一个公式出来,我想如果我还是高中的数学水平的话,估计也就10分钟就能怼出来了,汗!不知道大家还记不记得切线的概念,如果我们要画一条贝塞尔曲线,M[i-1]是起点,M[i]是终点,另外的两个控制点为A1, A2,这2个控制点一定会在某一个曲面的切线上,而切线则可以由三个点来确定,如我的草稿中,最上面橘黄色的线条就是切线,我们只需要在这条切线上,随意取2个点,分别作为前后曲线的控制点即可于是,经过我长时间的思考,总结了一个公式如下其中系数a, b是一个根据情况我随意取的免费云主机域名一个值,我试过,建议在0.3附近取值并调试,试试看具体效果再确定第一个点和最后一点因为无法通过这种方式取得2个控制点,因此我就在点集合的前后各加了一个随意自定自定的点,在实际遍历的时候忽略他们即可。整理了思路,具体实现如下oh yeah! 效果还可以,以后再也不用担心曲线的绘制了,理我们的k线图又近了一步ps: 数据的组织形式可以多种多样,可以是数组,可以是二位数组,也可以是对象,这并不是最主要的点,只要能正确处理就行了感谢你能够认真阅读完这篇文章,希望小编分享的“微信小程序中如何使用canvas制作K线”这篇文章对大家有帮助,同时也希望大家多多支持百云主机,关注百云主机行业资讯频道,更多相关知识等着你来学习!

相关推荐: CSS中怎么设置字间距

这篇文章主要介绍了CSS中怎么设置字间距,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面免费云主机域名让小编带着大家一起了解一下。letter-spacing:增加或减少字符间的空白(字符间距)。具体代码:这是正常的间距这是…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 09/07 22:30
下一篇 09/07 22:31

相关推荐