如何在IPython笔记本中连续显示一张表,后面跟着一个数字,而不在最后显示重复的数字?
例如,我想打印10个随机数,然后在打印的随机数下面绘制并显示一个图形,我想这样做3次:如何在IPython笔记本中连续显示一张表,后面跟着一个数字,而不在最后显示重复的数字?,python,matplotlib,ipython,ipython-notebook,Python,Matplotlib,Ipython,Ipython Notebook,例如,我想打印10个随机数,然后在打印的随机数下面绘制并显示一个图形,我想这样做3次: import matplotlib.pyplot as plt import numpy as np from IPython import display for _ in range(3): x = np.random.randn(10) print(x) fig = plt.figure() ax = fig.add_subplot(111) ax.plot(x
import matplotlib.pyplot as plt
import numpy as np
from IPython import display
for _ in range(3):
x = np.random.randn(10)
print(x)
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(x, x + 5, 'x')
display.display(plt.gcf())
在输出结束时,这3个图形将一个接一个地再次显示。有没有办法不在最后重复这些操作?这个解决方案应该有效
import matplotlib.pyplot as plt
import numpy as np
from IPython import display
%matplotlib inline
for _ in range(3):
x = np.random.randn(10)
print(x)
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(x, x + 5, 'x')
display.display(plt.gcf())
plt.close()
由于此单元格执行结束时没有打开的图形,因此不会生成其他绘图。即使此代码解决了您的问题,我建议不要立即接受它。也许ipython的人有一个更好的解决方案:)你甚至可以在调用
display.display..
之后调用plt.close()
。这样,您就不需要额外的循环和pylabtools导入