python 计算时间重叠_在Python 3.6中计算polygon和shapefile之间的重叠

我想计算shapefile和多边形之间的重叠百分比.我正在使用Cartopy和Matplotlib并创建了这里显示的地图:

显示了欧洲的一部分(使用下载的here形状文件)和任意矩形.假设我想计算矩形覆盖的比利时百分比.我该怎么做?下面显示了到目前为止的代码.

import matplotlib.pyplot as plt

import cartopy.crs as ccrs

import cartopy.io.shapereader as shapereader

from shapely.geometry import Polygon

from descartes import PolygonPatch

#create figure

fig1 = plt.figure(figsize=(10,10))

PLT = plt.axes(projection=ccrs.PlateCarree())

PLT.set_extent([-10,10,45,55])

PLT.gridlines()

#import and display shapefile

fname = r'C:\Users\Me\ne_50m_admin_0_countries.shp'

adm1_shapes = list(shapereader.Reader(fname).geometries())

PLT.add_geometries(adm1_shapes, ccrs.PlateCarree(),

edgecolor='black', facecolor='gray', alpha=0.5)

#create arbitrary polygon

x3 = 4

x4 = 5

y3 = 50

y4 = 52

poly = Polygon([(x3,y3),(x3,y4),(x4,y4),(x4,y3)])

PLT.add_patch(PolygonPatch(poly, fc='#cc00cc', ec='#555555', alpha=0.5,

zorder=5))

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值