Javascript 仅呈现当前可见的数据的SVG节点?

Javascript 仅呈现当前可见的数据的SVG节点?,javascript,d3.js,svg,Javascript,D3.js,Svg,我已经创建了一个支持缩放/平移的折线图,但是我现在使用的是由60000多个点组成的“真实”数据,性能毫不奇怪地下降到1-2 fps 是否有人有办法只渲染缩放/平移时可见的内容?我对使用html5画布感到紧张,甚至可以将画布用于带有时域的折线图吗?更新 我现在使用crossfilter.js来过滤我的数据。我的基本方法是,在缩放处理程序中,根据x.domain()范围(下边界和上边界)值过滤整个数据集。CrossFilter创建一个新数组,其中仅包含适合新域的数据。这个新数组被传递给我的更新函数,

我已经创建了一个支持缩放/平移的折线图,但是我现在使用的是由60000多个点组成的“真实”数据,性能毫不奇怪地下降到1-2 fps

是否有人有办法只渲染缩放/平移时可见的内容?我对使用html5画布感到紧张,甚至可以将画布用于带有时域的折线图吗?

更新

我现在使用crossfilter.js来过滤我的数据。我的基本方法是,在缩放处理程序中,根据x.domain()范围(下边界和上边界)值过滤整个数据集。CrossFilter创建一个新数组,其中仅包含适合新域的数据。这个新数组被传递给我的更新函数,它只呈现可见的数据


此外,值得注意的是,即使是HTML5画布也难以以足够快的速度渲染60k点。在90k左右,它完全停止工作

你已经尝试过的粘贴代码或者fiddleChrome和Firefox(可能还有大多数其他UAs)已经为你做了优化。Chrome和Firefox肯定不能很好地处理这个问题,我得到了1-2 fps。我也尝试过simplify.js,但eve在max tolerance中遇到了困难!我不允许发布实际的代码。如果你不允许显示确切的代码,请大致概述你正在使用的渲染技术(即使是英文),以及你在哪里看到这种优化的潜力。我是说,DOM中简单存在60000个元素是很慢的。这是您需要解决的问题,而不是渲染。您需要加载较少的未缩放点,然后在缩放时,通过从服务器请求更多数据来提高分辨率。