我有一个H5的页面(经常在微信浏览器中使用)调用了 HighCharts 来显示一个K图(其实是HighStock),由于金融方面的数据是经常、快速变化的,在以前采用了每秒钟更新图表、变化数据的方式,后来更换了价格接口,想要做到每秒钟N次变化数据。
按照旧有的逻辑其实已经实现了,但是现在发现一个严重的问题,在每秒钟多次变化数据时,造成DOM阻塞,尤其在微信浏览器中非常严重。我用 console.time 测试了很久,确定是 HighStock 在更新图表时造成的卡顿。
参阅大量资料之后,初步认定卡顿原因为 HighStock 采用 svg 渲染图表。
那么问题来了:
1、HighStock 在每秒钟多次更新的时候造成的卡顿,是否的确是因为 SVG ?
2、如果使用 Canvas 模式的图表,是否会减轻由 DOM 阻塞带来的严重卡顿?
3、如果上面的答案均为是,那么是否有某个参数或者配置,要求 HighStock 使用 Canvas 模式?
4、如果 HighStock 不能使用 Canvas,有没有其他优秀的 Canvas 图表框架推荐?(只用K图)
谢谢
杨魅力
相关分类