[英]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?
我正在尝试建立似乎是美国基本D3地图的地图,其中有9个人口最多的城市被圈了出来,但是遇到了一个非常明显但令人困惑的问题。
我正在使用Albers USA投影 , 美国各州的GeoJSON文件和一个包含以下内容的.csv :
我已经使用Google Fusion Tables的地理编码功能计算了long / lat值,这些值与Scott Murray的D3图书github页面上可用的值匹配。
当我尝试绘制每个城市应该位于的圆圈时,几乎每个城市都错位了。 在我要绘制的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中的城市没有显示在应显示的位置?
基本数据错误(city_pop.csv)。 通过Google Map运行纬度和经度,您将看到相同的图案形式。 例如,宾夕法尼亚(37.15477,-94.486114)是不是哪里宾夕法尼亚- https://goo.gl/maps/1G754
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.