我需要为多个国家/地区的州,省和地区提供geoJSON格式的路径。最容易获得的geoJSON数据适用于美国各州和国家级边界,而不适用于国内/地区。此geoJSON将用于使用D3.js创建地理可视化。
答案 0 :(得分:41)
与我在接受的答案中看到的步骤相比,此过程现在已经简化(2014年7月)。现在看来获取这些数据要容易得多。我起初在网上挣扎,希望我能以GeoJSON格式下载一堆标准地图,但除了标准的美国/加拿大产品之外,它还是空的。截至目前,直接GeoJSON似乎没有很多可用的东西。相反,您采用较旧的,广泛使用的格式来生成GeoJSON。这很容易,也是一条很好的选择。我们将使用形状文件并将它们转换为GeoJSON。
首先下载您感兴趣的地理区域的形状文件.shapefile是一种数字矢量存储格式,用于存储几何位置和相关的属性信息。 (http://en.wikipedia.org/wiki/Shapefile)
这些有很多来源。这些是我觉得有用的来源:
GADM - 按国家/地区下载数据或为全世界下载一个巨型文件。您下载的每个zip都有多个形状文件,从0开始增加。数字越大,细节级别越高。像国家,州,县等(http://www.gadm.org/country)
另一个下载网站(http://www.naturalearthdata.com/downloads/)
在人口普查局的推动下下载美国州,县,分县数据 - http://census.ire.org/data/bulkdata.html
获得形状文件后,将其拖放到http://www.mapshaper.org的网页中。在这里,您可以拖动滑块来更改矢量分辨率。我的经验是,10%的分辨率看起来仍然适用于网络地图,25%接近完美。文件大小大大减少,所以我建议使用它。我的马萨诸塞州地图在降低分辨率后从800kb的GeoJSON数据变为80kb。
点击mapshaper上的GeoJSON按钮,系统会自动为您导出文件。
可选 - 获得形状文件后,您可以使用Quantum GIS(QGIS)等工具免费编辑它。
您也可以在此网站上手绘GeoJSON数据。 http://geojson.io/#map=2/20.0/0.0
答案 1 :(得分:19)
关于如何从shapefile生成geoJSON有一个很好的文章 http://vallandingham.me/shapefile_to_geojson.html
以下步骤应该从开始到结束:
安装Quantum GIS框架http://www.qgis.org/e/qgis
如果您使用的是Mac OS X,则可以使用此版本http://www.kyngchaos.com/software
这将为您提供用于将shapefile转换为geoJSON的ogr2ogr实用程序
从此处http://www.gadm.org/country下载您所在国家/地区的shapefile,然后解压缩
对于加拿大以及可能的其他国家/地区,带有后缀0的shapefile适用于该国家/地区 边界和后缀1用于内部区域。不确定这个命名是否正确 各国一致。
将区域级别shapefile上传到MapShaper http://mapshaper.com/test/MapShaper.swf
如果您不关心优化生成的geoJSON的大小
将MapShaper中的“简化级别”滑块设置为所需级别,并将简化的shapefile导出为“Shapefile - Polygons”
将.shp和.shx文件下载到解压缩原始文件的本地目录 shapefiiles,用简化文件替换原始文件。
导航到本地目录并运行以下命令,将< shapefile> 替换为您要转换的shapefile的实际名称。
ogr2ogr -f geoJSON regions.json< shapefile> .shp
您现在应该以geoJSON格式拥有您所在国家/地区的区域。检查以确保在regions.json中定义了路径,并且维护了属性字段(例如区域名称)。
答案 2 :(得分:4)
找到一个下载geojson的地方:geojson-maps.kyd.com.au,它使用Natural Earth中的数据。
来自Highcharts的these maps。这个最适合这个问题。
答案 3 :(得分:3)
我最近一直在寻找同样的事情。有一个github帐户为世界上每个国家提供geojson,不幸的是,它似乎是D3不支持的UTM格式,所以如果你愿意筛选它们并逐个转换为wgs84或者有或者愿意写一个程序,这里是链接: https://github.com/johan/world.geo.json
答案 4 :(得分:0)
不久前来到这个https://geojson.co/。如果您需要下载任何国家或城市的GeoJson文件(带有州或省的行政区域)。您甚至可以在一个文件中提供多区域数据。