用Cartopy绘制特定国家的州界线

时间:2018-12-04 09:25:40

标签: python cartopy

绘制地图时,我添加状态行

ax.add_feature(cfeature.NaturalEarthFeature(
    'cultural', 'admin_1_states_provinces_lines', resolution,
    edgecolor='gray', facecolor='none'))

其中resolution'110m''50m''10m'。 110m数据集仅包含美国各州,而其他州则更多。

我只想为所选国家/地区绘制州界(与所选决议无关),例如只有美国,加拿大和澳大利亚。

我在Draw a map of a specific country with cartopy?中发现了类似的问题,并从gadm.org下载了美国形状文件。我使用

添加了状态
us_shapes = list(shpreader.Reader('shapefiles/gadm36_USA_1.shp').geometries())
ax.add_geometries(us_shapes, ccrs.PlateCarree(), edgecolor='gray',
                  facecolor='none')

但这给我带来了两个问题:

  • 形状还包含国家(在本例中为美国)边框本身,我之前用黑色绘制过。我当然可以在国家边界之后绘制国家边界,但这有点多余,因为绘制了很多海岸线。有没有办法只获得国家内部的州界线(因此没有国家边界)?
  • 形状文件似乎包含非常好的分辨率(也许10m?)。当我以110m的分辨率绘制世界地图时,我宁愿只获得110m的状态线。否则,绘制地图的时间会大大增加,并且国家/州的形状也不是最理想的。形状文件是否也包含较低的分辨率?

下图显示了问题: Cartopy World Map with added US states

0 个答案:

没有答案