目前在 d3 中,如果您有一个要绘制的 geoJSON 对象,您必须对其进行缩放和转换,以使其达到所需的大小,并对其进行转换以使其居中。这是一项非常繁琐的反复试验任务,我想知道是否有人知道获得这些值的更好方法?
因此,例如,如果我有此代码
var path, vis, xy;
xy = d3.geo.mercator().scale(8500).translate([0, -1200]);
path = d3.geo.path().projection(xy);
vis = d3.select("#vis").append("svg:svg").attr("width", 960).attr("height", 600);
d3.json("../../data/ireland2.geojson", function(json) {
return vis.append("svg:g")
.attr("class", "tracts")
.selectAll("path")
.data(json.features).enter()
.append("svg:path")
.attr("d", path)
.attr("fill", "#85C3C0")
.attr("stroke", "#222");
});
我怎么能不一点一点地获得 .scale(8500) 和 .translate([0, -1200]) ?