繁体   English   中英

我应该使用变换而不是重绘吗?

[英]Should I use transform instead of redraw?

我有几张图表,每次使用d3笔刷缩放/平移时都会重绘。

但是,当我有大量的渲染元素时,重画开始有点慢。

我想知道是否可以转换(翻译)已经绘制的元素,并且仅在需要更新数据时才重新绘制,而不是每次移动画笔时都重新绘制所有元素。

我认为无论何时左右移动都可以大大提高我的可视化性能,不是吗?

有什么见解吗?

通常,您触摸DOM的次数越少,性能就会越好。 详细信息是特定于浏览器和平台的,但总的来说,这是性能从高到低的顺序(从最贵到最少):

  1. 创建和删除DOM元素。
  2. 修改现有DOM元素的属性。
  3. 内存中的JavaScript(也就是说,根本不涉及DOM ...例如数组迭代)。

因此,如果您可以通过简单地使用transform属性修改现有元素的目标子集来获得所需的结果,我想您的情况会更好。

当然,没有看到实际的代码和用例就不可能确定地说什么。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM