编程语言
首页 > 编程语言> > Javascript-为什么D3.js不显示我的geoJSON文件?

Javascript-为什么D3.js不显示我的geoJSON文件?

作者:互联网

我想用D3.js绘制柏林(德国)的轮廓.

我使用的Berlin的geoJSON文件是这样的(有Berlin-“bundesländer”):
http://opendatalab.de/projects/geojson-utilities/

但这不适用于我的.json文件.对于我们的州,我无法发现与该.json文件的区别,使用完全相同的代码就可以正常工作:
http://examples.oreilly.com/0636920026938/chapter_12/us-states.json

我还试图完全复制us-states文件,删除除一个之外的所有“功能”条目,然后仅用文件的坐标数组替换左一个的坐标数组.但是firebug告诉我,路径的元素根本没有“ d”属性.

我真的很感谢任何提示.先感谢您!

/ *
         我使用默认的albersUsa投影.
         如果我将路径定义为:d3.geo.path().projection(null),则会添加一些路径元素.
         但是,如果这是解决方案,我该如何转换该路径?
          * /

    var path = d3.geo.path();

    d3.json("data/berlinBundeslaender_simplify2000.json",function(geoJson){

        var color1 = d3.scale.category20();

        mainSVG.selectAll("path")
        .data(geoJson.features)
            .enter()
            .append("path")
            .attr("d",path)
            .attr("fill",function(d,i){return color1(i);});
    });

解决方法:

albersUSA的投影将截断美国下48个州,夏威夷或阿拉斯加以外的任何地区.也就是说,其他任何东西都不会显示.对世界的不同部分使用不同的投影.

标签:geojson,d3-js,visualization,json,javascript
来源: https://codeday.me/bug/20191122/2060682.html