多个形状内的底图轮廓

我试图仅在 shapefile 中包含的城镇范围内在地图上绘制插值天气数据。以下是带有导入 shapefile 的 Basemap 上未裁剪的轮廓: Contourf overlaid on Basemap with Shapefile


我已经尝试通过迭代轮廓集合来裁剪轮廓集合,如下所示:


m.readshapefile('data/grense', 'grense',zorder=10,linewidth=1, 

drawbounds=True)


patches   = []

for info, shape in zip(m.grense_info, m.grense):

   patches.append( Polygon(np.array(shape), linestyle=':', fill=False) )


for poly in patches:

   for collection in cs.collections:

      collection.set_clip_path(poly)

这显然将轮廓限制为一个多边形,即一个城镇,如下所示: Contourf clipped to one ploygon


是否可以创建一个轮廓集合的集合,然后我可以使用 ax.add_collection(new_contour_collection) 添加这些集合?类似的东西:


for poly in patches:

   for collection in cs.collections:

     contour_collection.append(collection)

ax.add_collection(contour_collection)

或者我可以从 Patchcollection 创建单个路径,然后使用 collection.set_clip_patch(patches) 剪辑每个轮廓集合?


浮云间
浏览 145回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python