Highcharts DOM阻塞、卡顿

我有一个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图)

谢谢


杨__羊羊
浏览 1168回答 1
1回答

杨魅力

应该是你更新的逻辑有问题。Highstock的性能已经非常优秀了,当然也不是 SVG 的原因,这两者不是性能的瓶颈。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript