GeoJSON --> 点几何的 TopoJSON 转换?
GeoJSON --> TopoJSON conversion for Point geometries?
我正在尝试使用 Mike Bostock 的命令行 topojson 工具将具有点特征的 GeoJSON 特征集合转换为 TopoJSON,但是输入文件中的坐标似乎没有被正确拾取,因为输出坐标结果是作为输出中的 [null,null]。 GeoJSON 文件包含 WGS84 中的球坐标,并在加载到 Leaflet 时正确显示。
我试过几个命令,比如这个
topojson --spherical -o topo.json geo.json
输入文件是
http://www.skiforeningen.no/marka/bilder/geo/geo.json
我需要告诉 topojson 更多关于输入 crs 和转换的信息吗?都是在输入文件中定义的吗?
您的 GeoJSON 文件已损坏,坐标是字符串而不是数字。您可以使用此 Python 脚本修复它:
import json
with open('geo.json', 'rb') as f:
geo = json.load(f)
for f in geo['features']:
geometry = f['geometry']
geometry['coordinates'] = [float(n) for n in geometry['coordinates']]
with open('geo3.json', 'wb') as f:
json.dump(geo, f)
我正在尝试使用 Mike Bostock 的命令行 topojson 工具将具有点特征的 GeoJSON 特征集合转换为 TopoJSON,但是输入文件中的坐标似乎没有被正确拾取,因为输出坐标结果是作为输出中的 [null,null]。 GeoJSON 文件包含 WGS84 中的球坐标,并在加载到 Leaflet 时正确显示。
我试过几个命令,比如这个
topojson --spherical -o topo.json geo.json
输入文件是
http://www.skiforeningen.no/marka/bilder/geo/geo.json
我需要告诉 topojson 更多关于输入 crs 和转换的信息吗?都是在输入文件中定义的吗?
您的 GeoJSON 文件已损坏,坐标是字符串而不是数字。您可以使用此 Python 脚本修复它:
import json
with open('geo.json', 'rb') as f:
geo = json.load(f)
for f in geo['features']:
geometry = f['geometry']
geometry['coordinates'] = [float(n) for n in geometry['coordinates']]
with open('geo3.json', 'wb') as f:
json.dump(geo, f)