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

如何在PyGMT中为图例标签条目添加垂直空白?

在PyGMT中解决图例符号重叠问题

核心方案:调整图例条目间距而非FONT_参数

FONT_系列参数仅控制字体相关属性,无法直接解决符号重叠的空白添加问题。要给图例条目添加空白避免重叠,推荐以下两种实用方法:

  • 方法1:手动插入空白图例条目
    定义图例条目时,在容易重叠的条目之间加入仅含空标签的条目,通过空条目撑开间距。示例代码:

    import pygmt
    
    fig = pygmt.Figure()
    fig.basemap(region=[0, 10, 0, 10], projection="X10c", frame=True)
    
    # 在震级条目间插入空白条目
    legend_entries = [
        {"symbol": "c0.2c", "label": "M 3.0"},
        {"label": ""},
        {"symbol": "c0.4c", "label": "M 5.0"},
        {"label": ""},
        {"symbol": "c0.6c", "label": "M 7.0"},
    ]
    
    fig.legend(spec=legend_entries, position="jTR+o0.5c", box=True)
    fig.show()
    
  • 方法2:全局调整图例条目间距
    通过PyGMT配置LEGEND_ENTRY_SEP参数,统一设置所有图例条目的垂直间距(单位支持厘米c或英寸i)。示例代码:

    import pygmt
    
    # 设置全局图例条目间距为0.3厘米
    pygmt.config(LEGEND_ENTRY_SEP="0.3c")
    
    fig = pygmt.Figure()
    fig.basemap(region=[0, 10, 0, 10], projection="X10c", frame=True)
    
    legend_entries = [
        {"symbol": "c0.2c", "label": "M 3.0"},
        {"symbol": "c0.4c", "label": "M 5.0"},
        {"symbol": "c0.6c", "label": "M 7.0"},
    ]
    
    fig.legend(spec=legend_entries, position="jTR+o0.5c", box=True)
    fig.show()
    

补充建议

如果符号本身尺寸过大导致重叠,可适当缩小符号缩放比例,再配合上述间距调整,优化效果会更明显。

内容的提问来源于stack exchange,提问作者Joseph James Farrugia

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 17:18:15