我有很多不同的情节,必须严格指定尺寸。每个文件一个图。问题是,当尺寸太大时,我在左侧的子图中有一些自由空间,我想裁剪。我不能使用subplots_adjust
,因为小尺寸的地块也会被歪曲。我拨打tight
时也无法使用savefig
选项。那么,如何在我的所有文件中使用固定缩进将所有绘图对齐到左侧?
import sys, os
import matplotlib.pyplot as plt
path = sys.path[0]
sizes = [(12,3,), (4,3,)]
x = range(20)
for i, size in enumerate(sizes):
fig = plt.figure(figsize = size, dpi = 80, facecolor='white', edgecolor=None, linewidth=0.0, frameon=True, subplotpars=None)
ax = fig.add_subplot(111)
ax.plot(x)
plt.ylabel ('Some label')
fig.savefig(os.path.join(path, 'size_'+str(i)+'.png'), dpi=80, facecolor=fig.get_facecolor(), edgecolor=None, papertype=None, format='png' ,transparent=False)
答案 0 :(得分:1)
我认为您可以使用tight_layout():
import sys, os
import matplotlib.pyplot as plt
path = sys.path[0]
sizes = [(12,3,), (4,3,)]
x = range(20)
for i, size in enumerate(sizes):
fig = plt.figure(figsize = size, dpi = 80, facecolor='white', edgecolor=None,linewidth=0.0, frameon=True, subplotpars=None)
ax = fig.add_subplot(111)
ax.plot(x)
plt.ylabel ('Some label')
plt.tight_layout()
fig.savefig(os.path.join(path, 'size_'+str(i)+'.png'), dpi=80,facecolor=fig.get_facecolor(), edgecolor=None, papertype=None, format='png',transparent=False)
你也可以使用像
这样的东西fig.subplots_adjust(right=0.9, left=0.1, top=0.9, bottom=0.1, wspace=0.2)
而不是plt.tight_layout()。如果你想。
请告诉我,这不是你需要的。