You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PyGMT地图经纬度轴标注及标签字号修改问题求助

解决PyGMT坐标轴标签字号修改问题

要修改PyGMT地图的坐标轴标签字号,需利用GMT的frame语法,在frame参数中通过+f指定字体大小。以下是修改后的完整代码:

import pygmt
fig = pygmt.Figure()

grid = pygmt.datasets.load_earth_relief(resolution="20m", region=[50,65,10,25])
pygmt.makecpt(series=[-8000,4000])

# 修改frame参数添加字号设置,移除grdcontour的重复frame配置
fig.grdimage(
    grid=grid, 
    projection="M15c", 
    frame=[
        "a",  # 自动生成经纬度刻度与标签
        "+f12p",  # 设置坐标轴标签和刻度的字号为12点
        "x+lLongitude",  # 自定义x轴标签
        "y+lLatitude"    # 自定义y轴标签
    ], 
    cmap="geo",
    dpi=300
)
fig.grdcontour(grid=grid, projection="M15c", levels=1000)
fig.colorbar(
    frame=["a1000f100", "x+lDepth/Elevation (m)", "y+lm"], 
    position="g51/6+w13c/0.5c+h"
)
fig.show()

关键改动说明:

  • 将frame="a"替换为列表形式的配置,通过+f12p指定字号(可根据需求调整为10p、14p等数值)。
  • 移除grdcontour中的frame="a",地图的坐标轴框架只需在第一个绘图命令(如grdimage)中设置一次即可,重复设置易引发冲突。
  • 若需区分坐标轴标签与刻度的字号,可使用更精细的配置:
    frame=[
        "xaf+f10p",  # x轴刻度字号10点
        "x+lLongitude+f14p",  # x轴标签字号14点
        "yaf+f10p",  # y轴刻度字号10点
        "y+lLatitude+f14p"   # y轴标签字号14点
    ]
    

内容的提问来源于stack exchange,提问作者Ranjan Kumar Sahu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 15:42:41