Python matplotlib如何减小水平排列图例的列间距
Matplotlib 缩小水平多列图例列间距的方法
不需要找隐藏参数,plt.legend() 自带官方参数可直接实现需求:
- 控制列与列之间间距的核心参数是
columnspacing,该参数为相对当前图例字体大小的间距值,默认值为2.0,数值越小相邻图例列挨得越近。 - 如果需要同时收紧单列内部图例符号和对应文字的空隙,可以搭配调整
handletextpad参数,默认值为0.8,调小即可让符号和文字更紧凑。
代码示例
直接替换你原来的legend调用即可,数值可以根据自己想要的紧凑程度调整:
# 原代码:plt.legend(ncol=4) plt.legend( ncol=4, columnspacing=0.6, # 控制列间距,0.5-1区间都是比较常用的紧凑效果 handletextpad=0.4 # 可选,控制符号和文字的间距,不需要可以删除该参数 )
如果已经提前创建了图例对象,也可以事后修改属性调整:
leg = plt.legend(ncol=4) leg.columnspacing = 0.6
当前默认参数的图例效果:
内容的提问来源于stack exchange,提问作者sadradio
相关产品推荐
相关产品推荐

