我第一次尝试用d3.js和GeoJSON构建一些东西。我设法让一个国家 - 爱沙尼亚被展示,但它是如此之小,你几乎看不到它。我尝试使用投影geoMercator()。scale但它不起作用 - 没有增加大小。
请看下面附图(条形图下):
这是我的 js :
var projection = d3.geoMercator()
.translate([w/2, h/2])
.scale([100]);
var path = d3.geoPath()
.projection(projection)
var w3 = 2000;
var h3 = 1500;
var svg = d3.select("body")
.append("svg")
.attr("width", w3)
.attr("height", h3)
d3.json("estonia.json", function (json){
svg.selectAll("path")
.data(json.features)
.enter()
.append("path")
.attr("d", path)
.style("fill", "#2294AA");
})
我做错了什么?
答案 0 :(得分:1)
我拿了你的密码,看到当我增加规模时,爱沙尼亚消失了。必须像这样将投影集中在一起:
var projection = d3.geoMercator()
.center([24.312863, 57.793424])
.scale([500])
.translate([w/2, h/2])
我从.json文件中获取坐标 [24.312863,57.793424] 。