d3 从点数组渲染多边形

d3 render polygon from points array

我正在使用 d3 和点字符串渲染多边形,如下所示:

shapes.enter()
.append("polygon")
.attr("points", function(d) {
    return d.path; // string of points ("123.123 22.334 ....")
});

我在数组中有这些点,我正在使用 array.join(" ") 获取字符串路径。

问题是我点数多,join操作繁重


答案:

最终,我们将数组划分为子数组,并将每个子数组单独连接成字符串,最后将所有字符串连接起来。 不知何故,它比我们尝试做的任何其他事情都要快。

最终,我们将数组分成子数组,并将每个子数组单独连接成字符串,最后将所有字符串连接起来。

不知何故,它比我们尝试做的任何其他事情都快(array.join 整个数组或每个元素的字符串连接)