我正在制作纽约市行政区的地图,但我似乎无法正确投影:我唯一得到的是一张小地图。
我尝试重新创建这个示例,它只会让控制台因错误而发疯,我怀疑是因为等式有问题。
当我试图让阿尔伯斯工作时,我尝试了这个问题的答案,但我仍然无法让地图工作。
With 960/500 height and width, I used: var projection = d3.geo.albers().center([40.71, 73.98]).parallels([29.5, 45.5]).scale(10000).translate([(width) / 2, (height)/2]);
现在,我正在使用横向墨卡托,代码如下,以及我使用这些文件之一创建的 topojson。
var width = 960,
height = 500;
var svg = d3.select("body").append("svg")
.attr("width", width)
.attr("height", height);
d3.json("nyc-borough.json", function(error, nyb) {
var boroughs = topojson.feature(nyb, nyb.objects["nyc-borough-boundaries-polygon"]).features;
var projection = d3.geo.transverseMercator()
.scale(1600)
.rotate([73 + 58 / 60, -48 - 47 / 60]);
var path = d3.geo.path()
.projection(projection);
var g = svg.append("g");
g.append("g")
.attr("id", "boroughs")
.selectAll(".state")
.data(boroughs)
.enter().append("path")
.attr("class", function(d){ return d.properties.name; })
.attr("d", path);
});
请,请停下来:(
提前致谢!