33

我正在做一个项目,需要使用 d3.js 显示国家和城市的地图。

实际上,D3 支持 GeoJson 格式。通常,我猜,GeoJson 格式是从其他格式转换而来的。

我用这个 GeoJson 数据发现了一些地方:

http://mbostock.github.com/protovis/ex/countries.js

但是,这只是一个国家列表,我正在寻找一些服务或程序,让我能够设置 ID、获取此格式并将其转换为 GeoJson,或者更好地在 GeoJson 中获取。

谢谢!!

4

4 回答 4

76

这需要成为一项服务吗?以下是我过去使用免费/开源工具处理此问题的方法:

现在您有了高分辨率的 GeoJSON 数据。在这里,有一些国家。

不过,这是一个非常大的文件,因此您需要将其拆分。但是您不需要为此提供服务,只需要每个国家/地区的静态文件,以 ID 命名。这很容易在您选择的实用程序(Python、Ruby、node.js)中使用脚本生成。

于 2012-03-06T20:39:34.750 回答
14

请注意,通过GDAL 库,您还可以使用命令行ogr2ogr来转换 shapefile。例如:

$ ogr2ogr -f geojson source_file.shp dst_file.json

将转换source_file.shp为 GeoJSON 格式的dst_file.json.

在这里阅读更多:

将 shapefile (.shp) 转换为 xml/json

于 2013-02-05T23:49:43.397 回答
3

看看https://github.com/mledoze/countries

它具有每个国家/地区的 geoJSON。(我会说医学分辨率)

countries.json包含每个国家/地区的描述,包括本地化的国家/地区名称、坐标(您可以在其中显示标签)和大写名称。

于 2015-09-16T09:13:17.497 回答
1

好吧,时代在变,一些好人将 shapefile 转为 geojson 格式化程序成为在线服务。

检查以下链接: http: //ogre.adc4gis.com/

他们甚至开源了它:http: //github.com/wavded/ogre

于 2015-06-11T08:22:23.520 回答