我有一个动态力图,每3分钟运行一次(使用setInterval我调用更新,开始在下面的顺序)
-
viz.update(); //attach new data from server like viz.path.data(data.links)
, -
viz.nodes.data(..)
-
viz.enter(); // viz.path.enter().append("path")
-
viz.exit(); // path.exit().remove()
-
force.start();
当我让浏览器打开一段时间后,浏览器变慢了,当我拖动节点时,节点移动也变慢了。我错过了什么吗?
帮助感激。谢谢。
SVG在Firefox中的表现比在Webkit/Chrome和IE10中要慢。
Firefox的性能还不错。有几件事你可以试试。
- 请确保您没有留下未使用的/空元素(如
s),并妥善清理所有内容。元素太多会很快破坏你的性能。 - 减少使用不透明度的节点数量,尽量少使用它。
- 减少元素的数量。
我还做了一件事,但不确定它是否有任何帮助,是在再次调用force.start()之前调用force.stop()。