我正在做一个项目,需要使用 d3.js 显示国家和城市的地图。
实际上,D3 支持 GeoJson 格式。通常,我猜,GeoJson 格式是从其他格式转换而来的。
我用这个 GeoJson 数据发现了一些地方:
http://mbostock.github.com/protovis/ex/countries.js
但是,这只是一个国家列表,我正在寻找一些服务或程序,让我能够设置 ID、获取此格式并将其转换为 GeoJson,或者更好地在 GeoJson 中获取。
谢谢!!
我正在做一个项目,需要使用 d3.js 显示国家和城市的地图。
实际上,D3 支持 GeoJson 格式。通常,我猜,GeoJson 格式是从其他格式转换而来的。
我用这个 GeoJson 数据发现了一些地方:
http://mbostock.github.com/protovis/ex/countries.js
但是,这只是一个国家列表,我正在寻找一些服务或程序,让我能够设置 ID、获取此格式并将其转换为 GeoJson,或者更好地在 GeoJson 中获取。
谢谢!!
这需要成为一项服务吗?以下是我过去使用免费/开源工具处理此问题的方法:
从Natural Earth Data下载公共领域的形状文件
使用Quantum GIS将 .shp 转换为 .geojson(一步,在“图层 > 另存为...”下)
现在您有了高分辨率的 GeoJSON 数据。在这里,有一些国家。
不过,这是一个非常大的文件,因此您需要将其拆分。但是您不需要为此提供服务,只需要每个国家/地区的静态文件,以 ID 命名。这很容易在您选择的实用程序(Python、Ruby、node.js)中使用脚本生成。
请注意,通过GDAL 库,您还可以使用命令行ogr2ogr
来转换 shapefile。例如:
$ ogr2ogr -f geojson source_file.shp dst_file.json
将转换source_file.shp
为 GeoJSON 格式的dst_file.json
.
在这里阅读更多:
看看https://github.com/mledoze/countries
它具有每个国家/地区的 geoJSON。(我会说医学分辨率)
countries.json
包含每个国家/地区的描述,包括本地化的国家/地区名称、坐标(您可以在其中显示标签)和大写名称。
好吧,时代在变,一些好人将 shapefile 转为 geojson 格式化程序成为在线服务。
检查以下链接: http: //ogre.adc4gis.com/
他们甚至开源了它:http: //github.com/wavded/ogre