在python中使用tight_layout()会创建不必要的空白

在python中使用tight_layout()会创建不必要的空白,python,matplotlib,Python,Matplotlib,由于x标签被切断,我使用tight_layout()来拟合绘图,但是从绘图中可以看出,我在图形的左侧和下方都得到了不必要的空白量。如何最小化图形周围的空白量,但仍然保持所有文本可见?我试着用 plt.tight_layout(pad=0) 但这只会减少图像顶部和右侧的空白 时间序列图如下: 您可以使用以下方法手动设置绘图上的空白量: import matplotlib.pyplot as plt fig, ax = plt.subplots() #plot your actual data

由于x标签被切断,我使用tight_layout()来拟合绘图,但是从绘图中可以看出,我在图形的左侧和下方都得到了不必要的空白量。如何最小化图形周围的空白量,但仍然保持所有文本可见?我试着用

plt.tight_layout(pad=0)
但这只会减少图像顶部和右侧的空白

时间序列图如下:


您可以使用以下方法手动设置绘图上的空白量:

import matplotlib.pyplot as plt

fig, ax = plt.subplots()

#plot your actual data here

plt.subplots_adjust(left=0.07, right=0.8, top=0.9, bottom=0.2)
#change the values above so that your figure and axes labels are all visible

plt.show()

通过更改
子绘图\u adjust
中的值,您可以为绘图设置正确的布局。

您可以使用以下方法手动设置绘图上的空白量:

import matplotlib.pyplot as plt

fig, ax = plt.subplots()

#plot your actual data here

plt.subplots_adjust(left=0.07, right=0.8, top=0.9, bottom=0.2)
#change the values above so that your figure and axes labels are all visible

plt.show()

通过更改
子图中的值,可以调整
为绘图设置正确的布局。

我觉得奇怪的是,这个过程不能自动化,比如说与tight\u layout()函数一起。然而,这解决了必须生成少量绘图并且可以手动调整的问题。注:应为plt。子批次。。。你说得对,我编辑了我的答案。我不知道有什么方法可以自动实现这一点,也不知道为什么matplotlib本身没有某种自动缩放功能来保持图形上的所有标签。我觉得奇怪的是,这个过程不能自动进行,比如说与tight_layout()函数一起。然而,这解决了必须生成少量绘图并且可以手动调整的问题。注:应为plt。子批次。。。你说得对,我编辑了我的答案。我不知道有什么方法可以自动做到这一点,也不知道为什么matplotlib本身没有某种自动缩放功能来保持图形上的所有标签。