python使用cartopy在地图中添加经纬线的示例代码

 更新时间:2024年01月26日 10:23:47   作者:微小冷  
gridlines可以根据坐标系,自动绘制网格线,这对于普通绘图来说显然不必单独拿出来说说,但在地图中,经纬线几乎是必不可少的,本文将给大家介绍了python使用cartopy在地图中添加经纬线的方法,需要的朋友可以参考下

gridlines

gridlines可以根据坐标系,自动绘制网格线,这对于普通绘图来说显然不必单独拿出来说说,但在地图中,经纬线几乎是必不可少的,而随着投影方式的不同,经纬线未必与坐标框线平行,所以这个功能还是十分必要的。比如加载地形图后,直接调用

ax = plt.axes(projection=ccrs.PlateCarree())
ax.stock_img()
ax.gridlines()
plt.show()

如下图所示

方法定义

gridlines的完整定义如下,参数很多

gridlines(crs=None, draw_labels=False, xlocs=None, ylocs=None, dms=False, 
	x_inline=None, y_inline=None, auto_inline=True, xformatter=None, 
	yformatter=None, xlim=None, ylim=None, rotate_labels=None, 
	xlabel_style=None, ylabel_style=None, labels_bbox_style=None, 
	xpadding=5, ypadding=5, offset_angle=25, auto_update=False, 
	formatter_kwargs=None, **kwargs)

参数含义如下

  • crs 坐标映射
  • draw_labels
    • 为False时,不绘制标签
    • 为"x"或者"y"时,只绘制对应坐标轴的标签
    • 为列表时,其对应标签顺序为[“x”, “y”, “top”, “bottom”, “left”, “right”, “geo”]
    • 为字典时,则在key所在位置添加value标签
  • xlocs, ylocs 用于确定网格线在给定的crs中的x/y的位置
  • dms 设为True时,网格附着在整数度分的位置
  • x_inline, y_inline 为True时,x/y标签放在图像内部
  • auto_inline 若为True,则自动设置x_inline和y_inline
  • xformatter, yformatter x/y网格的标签格式
  • xlim, ylim 设置x , y x,yx,y的坐标范围
  • rotate_labels 为False时不旋转标签;为True时,将标签旋转至与网格平行;为None时将根据对应的映射自行选择;如果是一个浮点数,则旋转对应角度
  • xlabel_style, ylabel_style 为字典类型,用于设置x/y标签的风格
  • labels_bbox_style 图框风格字典
  • xpadding, ypadding x/y标签的留白,俗称出血
  • offset_angle 偏移角度
  • auto_update 为True时,若图像刷新,则网格及其标签亦更新
  • formatter_kwargs 经纬度格式字典

示例

下面的示例来自官网

rotated_crs = ccrs.RotatedPole(pole_longitude=120.0, pole_latitude=70.0)

ax = plt.axes(projection=rotated_crs)
ax.set_extent([-6, 3, 48, 58], crs=ccrs.PlateCarree())
ax.coastlines(resolution='50m')
ax.gridlines(draw_labels=True, dms=True, x_inline=False, y_inline=False)

plt.show()

其经纬线的绘图元素有,标签,并且x , y方向的标签均绘制在图像外侧;dms设为True,所以图像中所有的经纬度均为整数。绘图结果如下

到此这篇关于python使用cartopy在地图中添加经纬线的示例代码的文章就介绍到这了,更多相关python cartopy添加经纬线内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python使用typing模块加强代码的可读性(实战演示)

    python使用typing模块加强代码的可读性(实战演示)

    Python是一门弱类型的语言,很多时候我们可能不清楚函数参数类型或者返回值类型,很有可能导致一些类型没有指定方法,typing模块可以很好的解决这个问题。下面通过本文给大家介绍python使用typing模块加强代码的可读性,感兴趣的朋友一起看看吧
    2021-12-12
  • python读写修改Excel之xlrd&xlwt&xlutils

    python读写修改Excel之xlrd&xlwt&xlutils

    这篇文章主要介绍了python读写修改Excel之xlrd&xlwt&xlutils,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • Python的条件表达式和lambda表达式实例

    Python的条件表达式和lambda表达式实例

    今天小编就为大家分享一篇Python的条件表达式和lambda表达式实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • Python 队列Queue和PriorityQueue解析

    Python 队列Queue和PriorityQueue解析

    这篇文章主要介绍了Python 队列Queue和PriorityQueue,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • Python图像处理库PIL的ImageDraw模块介绍详解

    Python图像处理库PIL的ImageDraw模块介绍详解

    这篇文章主要介绍了Python图像处理库PIL的ImageDraw模块介绍详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • 20非常有用的Python单行代码分享

    20非常有用的Python单行代码分享

    有用的 Python 单行代码片段,只需一行代码即可解决特定编码问题!本文将分享20 个 Python 一行代码,你可以在 30 秒或更短的时间内轻松学习它们。这种单行代码将节省你的时间,并使你的代码看起来更干净且易于阅读
    2022-11-11
  • 基于python实现分析识别文章/内容中的高频词和关键词

    基于python实现分析识别文章/内容中的高频词和关键词

    要分析一篇文章的高频词和关键词,可以使用 Python 中的 nltk 库和 collections 库或者jieba库来实现,本篇文章介绍基于两种库分别实现分析内容中的高频词和关键词,需要的朋友可以参考下
    2023-09-09
  • Python3时间转换之时间戳转换为指定格式的日期方法详解

    Python3时间转换之时间戳转换为指定格式的日期方法详解

    这篇文章主要介绍了Python3时间转换之时间戳转换为指定格式的日期,需要的朋友可以参考下
    2021-04-04
  • 解决Python网页爬虫之中文乱码问题

    解决Python网页爬虫之中文乱码问题

    今天小编就为大家分享一篇解决Python网页爬虫之中文乱码问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • Django框架教程之中间件MiddleWare浅析

    Django框架教程之中间件MiddleWare浅析

    这篇文章主要给大家介绍了关于Django框架教程之中间件MiddleWare的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Django框架具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-12-12

最新评论