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

如何保存带Y轴标题与刻度且绘图框水平居中的Matplotlib图形?

解决绘图框水平居中且保留Y轴元素的问题

默认plt.savefig会根据图形元素自动分配边距,Y轴标题会占用左侧额外空间,导致保存的图片左右边距不均。以下两种方法可实现绘图框水平居中,同时保留Y轴标题和刻度:

方法1:手动设置对称边距

通过plt.subplots_adjust直接指定左右边距数值,确保绘图框到图片边缘的距离完全相等:

import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 2 * np.pi, 100)
y = np.sin(x)

plt.plot(x, y)
plt.ylabel('Y-axis')
# 左右边距设为相同值,可根据Y轴标题长度微调
plt.subplots_adjust(left=0.15, right=0.15)
plt.savefig('/tmp/test.png')

方法2:自动布局配合固定尺寸

先用tight_layout适配元素避免截断,再固定图形宽高比保证居中效果:

import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 2 * np.pi, 100)
y = np.sin(x)

plt.plot(x, y)
plt.ylabel('Y-axis')
# 自动调整元素间距,pad控制整体边距大小
plt.tight_layout(pad=2)
# 设置固定图形尺寸,确保左右边距对称
plt.gcf().set_size_inches(6, 4)
plt.savefig('/tmp/test.png')

补充说明

  • 方法1的left/right参数可根据Y轴标题长度灵活调整;
  • 方法2的set_size_inches可按需修改图片整体尺寸,适配不同场景需求。

内容的提问来源于stack exchange,提问作者David Davó

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 10:37:33