- 积分
- 22856
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2014-4-28
- 最后登录
- 1970-1-1
|
发表于 2020-6-9 21:15:18
|
显示全部楼层
请教大神,用了你的maskout.py子程序,但是没能达到mask的效果,想只显示某个地市的,比如深圳。部分代码如下:LAT = []
LON = []
root = 'd:/data/outputdata/20200602/'
filename = root+'join_data_all.txt'
f = open(filename,'r')
i=0
for row in f.readlines():
lat = float(row[15:21])
lon = float(row[23:30])
LAT.append(lat)
LON.append(lon)
#==================read shp=======================
lon1=np.min(LON)
lon2=np.max(LON)
lat1=np.min(LAT)
lat2=np.max(LAT)
SHP1=r'F:\shp\gadm36_CHN_shp\gadm36_CHN_2'
SHP2=r'F:\shp\gadm36_HKG_shp\gadm36_HKG_0'
m = Basemap(llcrnrlon=lon1,llcrnrlat=lat1,urcrnrlon=lon2,urcrnrlat=lat2,projection = 'cyl')
m.readshapefile(SHP1, 'states',color='gray')
m.readshapefile(SHP2, 'states',color='gray')
x, y = m(LON, LAT)
cs1=m.scatter(x, y, marker='*',color='r', s=10, edgecolors='none')
clip=maskout.shp2clip(cs1,ax,m,SHP1,'Shenzhen')
plt.title(u'Python Super Mask',fontsize=40)
plt.show()
效果如图
|
|