Cartopy:如何仅绘制网格线标签而不显示网格线?
如何在Cartopy中仅绘制网格标签而隐藏网格线
不需要用到Matplotlib的底层功能,直接通过ax.gridlines()的参数设置就能实现。核心思路是开启标签绘制的同时,将网格线设置为不可见,具体有两种简便方法:
- 设置
linewidth=0:让网格线的宽度为0,直接隐藏 - 设置
color='none':让网格线完全透明
代码示例
import cartopy.crs as ccrs import matplotlib.pyplot as plt # 创建绘图对象 fig = plt.figure(figsize=(10, 6)) ax = fig.add_subplot(1, 1, 1, projection=ccrs.PlateCarree()) # 配置网格线:显示标签,隐藏线条 grid_lines = ax.gridlines(draw_labels=True, crs=ccrs.PlateCarree()) grid_lines.linewidth = 0 # 隐藏网格线,也可以替换为 grid_lines.color = 'none' # 添加海岸线作为参考 ax.coastlines() plt.show()
额外调整(可选)
如果需要优化标签样式,可以通过xlabel_style和ylabel_style参数自定义,比如修改字体大小、颜色:
grid_lines.xlabel_style = {'size': 10, 'color': 'gray'} grid_lines.ylabel_style = {'size': 10, 'color': 'gray'}
内容的提问来源于stack exchange,提问作者shadowtalker
相关产品推荐
相关产品推荐

