这个问题在这里已有答案:
在Jupyter Notebook中,我编写了以下代码,as MCVE:
import matplotlib.pyplot as plt
import numpy as np
x1 = np.linspace(-1, 1, 50)
for x in range(4):
plt.figure()
plt.plot(x1)
plt.savefig(str(x)+".png") # save figures separately
正如预期的那样,它可以产生4个地块。它们在一排下面彼此相连。
我希望有一个保存的输出,包含所有4个图。我不介意Jupyter Notebook只要保存就不会显示这些图。
我的尝试:单独保存数字,如0.png,1.png,2.png,3.png,然后垂直合并它们。
我希望有一个更简单的方法来做到这一点。如何保存单个输出?
编辑:
正如所建议的,我可以做子图,像这样:
fig,axes = plt.subplots(nrows=4)
fig.set_size_inches(8,12)
x1 = np.linspace(-1, 1, 50)
for ax in axes:
ax.plot(x1)
plt.savefig("save_fig.png")
我想要有很多数字,而不是一个包含许多子图的数字。如何在不使用子图的情况下保存多个数字?
初始化一个数字并为每个循环添加一个子图。循环结束后保存!