D3js在地图上圈出:投影问题?

时间:2017-03-09 16:12:39

标签: javascript d3.js map-projections

我再一次寻求帮助。

我设法绘制地图但是当我尝试添加圆圈(存储来自csv的位置)时,我的点出现在左下角,我收到以下错误

> Error: <circle> attribute cx: Expected length, "NaN". Error: <circle>
> attribute cy: Expected length, "NaN". Error: <circle> attribute r:
> Expected length, "NaN".

我在堆栈中阅读了很多帖子,我阅读了Mike Bostock的基本教程,但无法在正确的位置获得我的积分

所以我想知道我所使用的圈子的投影是不是我看到的这种行为的原因

请找到here我的plunker

N.B:我故意在我的if函数中使用了两次相同的json文件,请不要注意这一点

非常感谢您的帮助

1 个答案:

答案 0 :(得分:1)

有两件事情会浮现在脑海中:

  1. 您的CSV标头(Lon,Lat)与您用来居中圆圈(lon,lat)的属性不匹配。

  2. 您的csv中存在错误:13,33.243161-8.512494999999944,Station13,1672473(它缺少逗号)。

  3. 如果您认为投影有问题,最简单的方法就是测试一下:

    console.log(projection[0,0]); 
    

    如果您返回SVG坐标,则您的预测可能不是问题。相反,问题可能在于您正在为投影提供什么或使用数据投影返回的内联公式。