Javascript 当我使用long/lat和Albers USA投影绘制这9个美国城市时,为什么这9个城市与D3地图上的实际位置不一致?
我试图建立一张美国的基本D3地图,用圆圈标出9个人口最多的城市,但遇到了一个非常明显但令人困惑的问题 我正在使用一个Albers USA投影、一个美国各州地理JSON文件、一个.csv,其中包括:Javascript 当我使用long/lat和Albers USA投影绘制这9个美国城市时,为什么这9个城市与D3地图上的实际位置不一致?,javascript,d3.js,Javascript,D3.js,我试图建立一张美国的基本D3地图,用圆圈标出9个人口最多的城市,但遇到了一个非常明显但令人困惑的问题 我正在使用一个Albers USA投影、一个美国各州地理JSON文件、一个.csv,其中包括: 城市名称 2014年估计人口 纬度 经度 我使用Google Fusion tables的地理编码功能计算了long/lat值,它们与上可用的值相匹配 当我试图在每个城市应该在的地方画一个圆圈时,几乎每个城市都不合适。在我试图规划的9个城市中——纽约、费城、芝加哥、休斯顿、达拉斯、圣安东尼奥、凤凰城、
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
});
});
要点如下:
我整天都在玩这个。有人有什么想法吗?我一直把头撞在墙上,感觉像是永远,我完全迷失了方向
tl;为什么D3地图上的城市
不在他们要去的地方出现
你应该来吗
基础数据错误(city_pop.csv)。通过谷歌地图运行你的纬度和经度,你会看到相同的模式形式。
例如,宾夕法尼亚州费城(37.15477,-94.486114)不是宾夕法尼亚州所在的地方-请在问题中添加代码,不要链接到外部网站。@xxbbcc谢谢,我添加了d3.csv()代码。宾果。谢谢如果这不是检查数据集完整性的一课,我不知道is.NP会发生在我们所有人身上。还创建了包含所有坐标的地图-