我想知道如何使用 D3.js 为全屏世界地图计算和确定正确的 projection.scale([value]) 值。
文档说默认值为 150。但是这个“150”代表什么?
我正在尝试绘制与屏幕宽度完全相同的世界地图。我将 svg 区域设置为 window.innerWidth 但不确定我应该为世界地图的比例赋予什么值。
在某些情况下,人们得到了他们想要适应的特征的范围,但我无法得到世界地图整个范围的范围。
在这种情况下计算比例值的正确方法是什么?
width = window.innerWidth;
height = window.innerHeight;
svg = d3.select("#svgArea").append("svg")
.attr("id", "svg")
.attr("width", width)
.attr("height", height);
projection = d3.geo.equirectangular()
.scale(????)
.translate([width / 2, height / 2])
.precision(.1);
path = d3.geo.path().projection(projection);
d3.json("world-50m.json", function(error, world) {
var land = topojson.feature(world, world.objects.land);
svg.insert("path", ".graticule")
.datum(land)
.attr("class", "land")
.attr("fill", "#aaaaaa")
.attr("stroke", "#000000")
.attr("stroke-width", "0.5px")
.attr("d", path);
})
提前致谢。