Matplotlib使用for循环显示多个图像

2024-09-28 01:28:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在Matplotlib中显示多个图形。这是我的代码:

for i in range(8): 
    a = sitk.ReadImage("000%d.IMA"%(i+1))
    ...

    plt.figure(i+1)
    plt.imshow(a_np,cmap=plt.cm.gray)

然而,图(1)到图(7)将在过程中显示,但只有图(8)留在最后。我怎么能同时看到所有的数字? 我很困惑,我的环境是Ipython笔记本当我改变环境为spyder的结果将是正确的。


Tags: 代码in图形for环境matplotlibnprange
1条回答
网友
1楼 · 发布于 2024-09-28 01:28:29

如果要在8个不同的窗口中显示8个不同的图形,下面是一个有效的示例:

import matplotlib.pyplot as plt 
import numpy as np 

x = np.linspace(0,10)
y = np.sin(x)

for i in range(8):
    plt.plot(x,y)
    plt.figure(i+1)

plt.show()

这将用x vs y绘制8个不同的窗口,所有窗口都将保持“活动”,直到您关闭它们。

确保在for循环外调用plt.show()

相关问题 更多 >

    热门问题