我用D3.js制作了一张世界地图。一切都像魅力一样。然后我使用相同的代码用于不同的geojson文件,仅描绘瑞典,并且获得了多个解析错误。两个json文件都具有相同的结构,格式良好等等。唯一的区别是坐标,所以我怀疑这是问题所在。有什么想法吗?
我正在使用QGIS将shapefile转换为geojson格式。我得到的错误是:“错误:解析d ='[路径字符串]'”时出现问题。路径字符串包含NaN。
Sweden.json摘录:
{
"type": "Feature",
"id": 0,
"properties": {
"KNKOD": "0114",
"KNNAMN": "Upplands Väsby",
"LANDAREAKM": 75.4
},
"geometry": {
"type": "Polygon",
"coordinates": [
[
[
1620218.000425555,
6599561.998826771
],...
Countries.json摘录
{
"type": "Feature",
"id": 0,
"properties": {
"type": "Country",
"name": "Aruba"
},
"geometry": {
"type": "Polygon",
"coordinates": [
[
[
-69.89912109375,
12.452001953124991
],...
的Javascript
var canvas = d3.select("body").append("svg")
.attr("width", 960)
.attr("height", 1000)
d3.json("sweden/countries.geojson", function (data) {
var group = canvas.selectAll("g")
.data(data.features)
.enter()
.append("g")
var path = d3.geo.path().projection(d3.geo.mercator());
var areas = group.append("path")
.attr("d", path)
})
答案 0 :(得分:0)
您的GeoJSON文件不在同一坐标系中。瑞典的坐标看起来像UTM。使用QGIS转换为GeoJSON时,请确保您使用的瑞典坐标系统与世界文件相同 - 这应该可以解决错误。