我正在尝试将Mike Bostock的“让我们制作地图”教程(https://bost.ocks.org/mike/map/)修改为我自己的房地产地块数据集,但是当我尝试进行渲染时,我得到了: Imgur
我从Shapefile开始,通过修改本教程中的代码将其转换为.json:
ogr2ogr \
-f GeoJSON \
parcels.json \
Parcels_Clipped.shp
然后我将其转换为此:
topojson \
-o parcels2.json \
-- \
parcels.json
在d3.js脚本中,我使用以下命令导入了它:
queue()
.defer(d3.json, 'parcel2s.json')
.await(drawMap);
这是我的drawMap()函数:
function drawMap( error, parcels ) {
var width = 600,
height = 600;
var projection = d3.geo.albers()
.center([0, 40.0092216])
.rotate([-105.2047471, 0])
.parallels([39.71666666666667, 40.78333333333333])
.scale(6000)
// .fitSize([600,600]);
.translate([width / 2, height / 2]);
var path = d3.geo.path()
.projection(projection)
.pointRadius(2);
var svg = d3.select("body").append("svg")
.attr("width", width)
.attr("height", height);
svg.append("path")
.datum(topojson.feature(parcels, parcels.objects.parcels))
.attr("d", d3.geo.path().projection(d3.geo.mercator()))
.attr("class", "parcel");
}
我没有任何错误,至少我得到了东西作为输出,但是正如您从发布的图像中看到的那样,多边形到处都是。他们应该展示房地产包裹。