在d3上具有UTM坐标的LineString

时间:2013-03-14 05:51:34

标签: d3.js gis geojson

我正试图用d3实现一些映射。我从使用命令d3.svg.line()转到d3.geo.path()并重组为Geojson后发生了一些问题。

我已经在UTM坐标区域48N上绘制了线字符串部分,如下所示

{"type":"FeatureCollection","features":[
{"type":"Feature","id":"02","properties":{"name":"LMC1"},"geometry":{"type":"LineString","coordinates":[
[375221,1.92031e+06],[375287,1.92027e+06],..]}},..]}

我使用mercator设置投影

var projection = d3.geo.mercator(),
path = d3.geo.path().projection(projection);

此结果显示复杂的线条 显示的JavaScript控制台

Error: Problem parsing d="M521120.2777777778,111.9000492736892L620.2810464730694,...

我做错了投影吗?或者geo.path不支持UTM了吗? 有谁有想法吗?

您还可以在http://jsfiddle.net/agadoo/qNCcV/

上看到此代码的示例

1 个答案:

答案 0 :(得分:0)

您不能使用d3.geo(尚未)使用UTM坐标。你必须将它们转换成例如在将数据传递给d3之前的墨卡托投影。这个(以及更多)包含在Mike's tutorial中。