我有一个新问题。 D3 可以使用 d3 中的 voronoi 函数绘制这个: http ://www.nytimes.com/interactive/2008/05/03/business/20080403_SPENDING_GRAPHIC.html?_r=0 吗?我在想的是一个 svg,它的行为类似于 a 并将此处找到的 voronoi http://bl.ocks.org/mbostock/4060366绑定到一个圆圈。《纽约时报》已经使用 Flash 完成了上述可视化。有任何想法吗?我尝试创建一个大圆圈并嵌入较小的圆圈,但 voronoi 没有出现,并且点不限于外圈。生成的代码:
<svg class="PiYG" width="560" height="570">
<circle cx="270" cy="300" r="260" style="stroke: rgb(0, 0, 0);">
<g>
我的 js 代码如下所示:
var width = 560, height = 570;
var svg = d3.select("#VD1").append("svg")
.attr("width", width)
.attr("height", height)
.attr("class", "PiYG");
var path = svg.append("circle")
.attr("cx", 270)
.attr("cy", 300)
.attr("r", 260)
.style("stroke", "#000")
.append("g")
.selectAll("path");
var vertices = d3.range(count).map(function(d) {
return [Math.random() * width, Math.random() * height];
});
var voronoi = d3.geom.voronoi()
.clipExtent([[0, 0], [width, height]]);
svg.selectAll("circle")
.data(vertices.slice(2))
.enter().append("circle")
.attr("transform", function(d) { return "translate(" + d + ")"; })
.attr("r", 2);
非常感谢!