【问题标题】:Why do these 9 U.S. cities not correspond to their actual locations on a D3 map when I plot them using long/lat with an Albers USA projection?为什么这 9 个美国城市与 D3 地图上的实际位置不对应,当我使用 Albers USA 投影的 long/lat 绘制它们时?
【发布时间】:2015-09-04 06:27:07
【问题描述】:

我正在尝试建立一个看似基本的美国 D3 地图,其中 9 个人口最多的城市用圆圈标记,但遇到了一个必须非常明显但令人困惑的问题。

我正在使用 Albers USA 投影,即 U.S.声明 GeoJSON 文件,以及一个 .csv,其中包括:

  1. 城市名称
  2. 2014 年估计人口
  3. 纬度
  4. 经度

我使用 Google Fusion 表的地理编码功能计算了经纬度值,它们与 Scott Murray's D3 book github page 上可用的值相匹配。

当我试图在每个城市应该存在的地方画一个圆圈时,几乎每个城市都不合适。在我试图绘制的 9 个城市中——纽约、费城、芝加哥、休斯顿、达拉斯、圣安东尼奥、凤凰城、圣地亚哥、洛杉矶——只有纽约和费城相对完整。芝加哥转向明尼阿波利斯。圣地亚哥和洛杉矶一团糟。得克萨斯州和亚利桑那州的城市已经完全从他们的州消失了。

这是 d3.csv 代码:

        d3.csv("city_pop.csv", function(data){
                console.log(data);
            var rScale = d3.scale.linear()
                            .domain([0, d3.max(data, function(d){
                                return parseFloat(d.estimate_2014);
                            })])
                            .range([1,15]);

            dataset = data;

            svg.selectAll("circle")
            .data(dataset)
            .enter()
            .append("circle")
            .attr({
                "cx": function(d) { return projection([d.lon, d.lat])[0];},
                "cy": function(d) { return projection([d.lon, d.lat])[1];},
                "r": function (d) { return rScale(parseFloat(d.estimate_2014));}
            })
            .style({
                "fill": "red",
                "opacity": 0.8
            });
        }); 

这里是要点:http://bl.ocks.org/iblind/2e90a6f516fee793380e

我整天都在玩这个。有没有人有任何想法?我一直在用头撞墙,感觉就像永远一样,完全迷失了。

tl;dr:为什么这张 D3 地图中的城市 http://bl.ocks.org/iblind/2e90a6f516fee793380e 没有出现在他们的位置 应该出现吗?

【问题讨论】:

  • 请将您的代码添加到问题中,不要链接到外部网站。
  • @xxbbcc 谢谢,我添加了 d3.csv( ) 代码。

标签: javascript d3.js


【解决方案1】:

基础数据错误 (city_pop.csv)。通过谷歌地图运行你的纬度和经度,你会看到相同的模式形式。 例如,Philadelphia,Pennsylvania (37.15477,-94.486114) 不是宾夕法尼亚所在的地方 - https://goo.gl/maps/1G754

【讨论】:

  • 宾果游戏。谢谢。如果这不是检查数据集完整性的课程,我不知道是什么。
  • NP,发生在我们所有人身上。还创建了一个包含所有坐标的地图 - google.com/maps/d/…
猜你喜欢
  • 2011-12-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-17
  • 2016-08-23
相关资源
最近更新 更多