Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/349.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Plt.show显示完整图形,但savefig正在裁剪图像_Python_Matplotlib - Fatal编程技术网

Python Plt.show显示完整图形,但savefig正在裁剪图像

Python Plt.show显示完整图形,但savefig正在裁剪图像,python,matplotlib,Python,Matplotlib,我的代码成功地将图像保存到文件中,但它从右侧裁剪了重要的细节。用于在出现plt.show问题时修复此问题,但在本例中,是savefig命令错误地生成了图形。如何解决这个问题 我的代码的相关示例: import glob import os for file in glob.glob("*.oax"): try: spc_file = open(file, 'r').read() newName = file[6:8] + '-' + file[4:6] +

我的代码成功地将图像保存到文件中,但它从右侧裁剪了重要的细节。用于在出现
plt.show
问题时修复此问题,但在本例中,是
savefig
命令错误地生成了图形。如何解决这个问题

我的代码的相关示例:

import glob
import os
for file in glob.glob("*.oax"):
    try:
        spc_file = open(file, 'r').read()
        newName = file[6:8] + '-' + file[4:6] + '-' + file[0:4] + ' ' + file[8:12] +  ' UTC (Observed) - No Sea Breeze Day'
        plt.title(newName, fontsize=12, loc='left')
        plt.savefig('X:/' + newName + '.png')        
        plt.show()
    except Exception:
        pass
图像(顶部是
plt.show
,底部是从
savefig
生成的文件):


你可以试试

plt.savefig('X:/' + newName + '.png', bbox_inches='tight')
或者您可以定义数字大小,如

fig = plt.figure(figsize=(9, 11))
...
plt.savefig(filename, bbox_inches = 'tight')
如中所述,您也可以尝试:

plt.tight_layout()

你能举一个简单的例子,让其他人可以测试,最好不用下载额外的数据和软件包吗?@Neapolitan。这超出了我的技能范围。下面提供的答案表明,这个问题有一个通用的解决方案,与数据无关。@Neopolitan我不知道问题是如何产生的,所以我不确定如何解决生产可以复制的更简单的数据。这必须是默认选项,bbox_inches='tight'。我将其与高dpi值结合使用,效果非常好。