【python利用shp文件进行绘图白化】,大连e都市(python shp文件的读取和绘图)
0evadmin
编程语言
18
文件名:【python利用shp文件进行绘图白化】,大连e都市
【python利用shp文件进行绘图白化】
python白化 白化的作用python实现 白化的作用 参考博文【matlab利用shp文件制作mask白化文件】 python实现 python借助shp文件对绘图进行白化,不需要进行mask文件的制作,可以高效地进行区域绘制 import numpy as npimport cartopy.crs as ccrsimport cartopy.feature as cfimport matplotlib.pyplot as pltimport cartopy.io.shapereader as shpreaderfrom cartopy.mpl.ticker import LatitudeFormatter,LongitudeFormatterfrom matplotlib.path import Pathfrom cartopy.mpl.patch import geos_to_pathplt.rcParams['font.sans-serif']=['KaiTi']shp_path=r'.\省.shp'shp_data=shpreader.Reader(shp_path)fig=plt.figure(figsize=(3,2),dpi=500)ax1=plt.subplot(121,projection=ccrs.PlateCarree())ax2=plt.subplot(122,projection=ccrs.PlateCarree())for i,ax in enumerate([ax1,ax2]):ax.add_geometries(shp_data.geometries(),crs=ccrs.PlateCarree(),edgecolor='k',facecolor='none',lw=0.5)ax.set_extent([70, 140, 0, 55],crs=ccrs.PlateCarree())ax.set_xticks(np.arange(70,140,5))ax.set_yticks(np.arange(0,55,5))# ax.xaxis.set_major_formatter(LongitudeFormatter())# ax.yaxis.set_major_formatter(LatitudeFormatter())ax.tick_params(direction='in',labelsize=3,top=True,right=True,length=2,width=0.5)if i==0:ax.set_title('未白化',fontsize=6)else:ax.set_title('白化后',fontsize=6)########定义绘图数据######################x=np.arange(70, 140, 0.02)y=np.arange(0, 55, 0.02)X,Y=np.meshgrid(x,y)Z=(X-108)**2+(Y-29)**2#######循环画图#########################for i,ax in enumerate([ax1,ax2]):if i==0:ax.contourf(X,Y,Z)else:ac=ax.contourf(X,Y,Z)#######获取path#######################records=shp_data.records()for record in records:if record.attributes["省"] in ["河南省"]:path=Path.make_compound_path(*geos_to_path([record.geometry]))#######白化###########################for collection in ac.collections:collection.set_clip_path(path, transform=ax2.transData)file_nineline = ".\九段线.shp"reader_nineline = shpreader.Reader(file_nineline)ax.add_geometries(reader_nineline.geometries(), crs=ccrs.PlateCarree(), lw=0.5, fc='none')plt.show() 参考:https://mp.weixin.qq.com/s?__biz=MzIxODQxODQ4NQ==&mid=2247484487&idx=1&sn=e654ab7eeeb41a15f816b52b391e93cb&chksm=97eb981da09c110ba06115ed93a4a4450bbe84f8b57b90a9819b6b06f801b533c1b002f14223&scene=21
同类推荐
-

【Python+selenium】生成测试报告,y470拆机(y470p拆机图)
查看 -

【PythonRS】植被显示增强(多光谱、正射、照片等),东芝as100
查看 -

【Python】Flask + MQTT 实现消息订阅发布,ipad3发布
查看 -

【Python】nn.BCEWithLogitsLoss函数详解,智器q8怎么样(智器 v5)
查看 -

【Python】人工智能-机器学习——不调库手撕深度网络分类问题,海信e860手机
查看 -

【Python】基于Python和Qt的海康威视相机开发,hp3390
查看 -

【Python】基础(学习笔记),w30hd(python教程 w3school)
查看 -

【Python】手把手教你用tkinter设计图书管理登录UI界面(四),华为ec321(tkinter图书管理系统界面)
查看 -

【Python】重磅!这本30w人都在看的Python数据分析畅销书更新了!,诺基亚 e65
查看
控制面板
网站分类
搜索
最新留言
文章归档
网站收藏
友情链接