我正在尝试生成两个不同的图形来分隔使用相同基本数据的文件(.png 图像),但我得到了空白的白色图像。但是,当在带有 plt.show() 语句的 jupyter 笔记本中显示时,这两个数字似乎都不错。我的相关代码如下所示:
plt.figure(1)
fig1, axs1 = plt.subplots(2,2)
plt.figure(2)
fig2, axs2 = plt.subplots(2,2)
# generate 4 datasets in a for loop
for i in range(4):
x,y = createRandomData(parameters)
fit1 = doFit1(x,y)
plt.figure(1)
axs1[i//2,i%2].plot(x,y,color='black',linewidth = 1)
axs1[i//2,i%2].plot(x,fit1,color='green',linewidth = 1)
fit2 = doFit2(x,y)
plt.figure(2)
axs2[i//2,i%2].plot(x,y,color='black',linewidth = 1)
axs2[i//2,i%2].plot(x,fit1,color='green',linewidth = 1)
plt.figure(1)
plt.gcf().set_size_inches(12,8)
plt.gcf().savefig('dataWithFit1.png', dpi=200)
plt.show()
plt.figure(2)
plt.gcf().set_size_inches(12,8)
plt.gcf().savefig('dataWithFit2.png', dpi=200)
plt.show()
无法弄清楚为什么 savefig() 不产生正确的输出,即使下面的 show() 语句产生正确的输出到 jupyter notebook 内的浏览器。
我也尝试过 variablefig1
而不是plt.gcf()
.
有什么建议么?