簡體   English   中英

如何在D3中加載geojson文件的geometryCollection

[英]how to load geometryCollection of geojson file in d3

我使用mapshapers成功地將英國地圖shapefile轉換為geojson。 但是我無法在d3.js中加載此geojson。 請幫忙。 腳本如下。

<script src="http://d3js.org/d3.v3.min.js"></script>
<script>

var canvas = d3.select("body").append("svg")
        .attr("width", 760)
        .attr("height", 700)

        d3.json("Areas_uk_geo.json", function (data) {
            var group = canvas.selectAll("g")
                .data(data.geometries)
                .enter()
                .append("g");

            var projection = d3.geo.mercator();
            var path = d3.geo.path.projection(projection);

            var areas = group.append("path")
                .attr("d", path)
                .attr("class", "area");
        });
</script>

geojson文件具有geometryCollection而不是featureCollection。 geojson文件的格式如下。

{
    "type" : "GeometryCollection",
    "geometries" : [{
            "type" : "MultiPolygon",
            "coordinates" : [[[[-2.2241804372470533, 56.88745481725907],

.... }, ... 等等。

我收到的錯誤是“ d3.geo.path.projection不是函數”

如@ vincent-beltman評論中所述,應該

d3.geo.path().projection(projection);

您可以在Mike Bostock的“讓我們做一張地圖”中進行確認。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM