经纬度绘图_Python气象绘图教程(十七)Cartopy_7

本教程介绍如何使用Cartopy在地图上插入图片并添加人文信息,如居民点和高速公路。通过导入库包,读取数据,添加地理信息,结合填色图和色条,实现气象预报图的详细展示。
摘要由CSDN通过智能技术生成

本节提要:在地图上插入图片、在地图上添加更多的人文信息、add_feature和add_geometries比较。



一、在地图上插入图片

在地图上插入预警图片,是比较常用的预警信息可视化技术,我想出的是一个笨办法:首先,利用cartopy绘制需要地区的地图,我的意见是需要去除外框线,视觉效果更好;然后,在需要的地方添加子图并利用imshow命令添加预警图片;最后,利用去除框线的命令使预警图的框线消失。 先导入可能要使用的库包:
import cartopy.crs as ccrs import cartopy.io.shapereader as shpreaderimport matplotlib.pyplot as plt
然后准备各种缩写、限定值、存放路径:
plt.rcParams['font.sans-serif']=['SimHei']#解决中文显示extent=[108.2,110.8,29.1,31.401]#绘图范围proj=ccrs.PlateCarree()#简写赋值shppath=r'E:\shp\恩施土家族苗族自治州_行政边界\恩施土家族苗族自治州_行政边界.shp'shp=shpreader.Reader(shppath)
按照前面讲的内容,定义画布,添加绘制地图的主图:
fig=plt.figure(figsize=(4,4),dpi=500)ax=fig.add_axes([0,0,1,1],projection=proj)
随后绘制主图的地理信息,并去除框线等:
###############################以下为添加县市名称和点########################################nameandstation={
    "恩施":[109.5,30.2],"利川":[109,30.3],"巴东":[110.34,31.04],"建始":[109.72,30.6],"宣恩":[109.49,29.987],"来凤":[109.407,29.493],"咸丰":[109.14,29.665],"鹤峰":[110.034,29.89]}for key,value in nameandstation.items():    ax.scatter(value[0] , value[1] , marker='.' , s=90 , color = "k" , zorder = 3)    ax.text(value[0]-0.09 , value[1]+0.03 , key , fontsize = 10 , color = "k")ax.add_geometries(shp.geometries(),proj,facecolor='none',edgecolor='k')ax.set_extent(extent)ax.background_patch.set_visible(False)#去掉边框ax.outline_patch.set_visible(False)ax.set_title('插入预警图片')

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值