使matplotlib的imshow在for循环中阻塞print()

3
在ipython notebook中,我正在使用类似于以下代码的for循环来调用matplotlib.pyplot imshow函数:
for i in range(3):
    plt.figure()
    plt.imshow(I[i])
    print("some explanation for image " + str(i))

基本上我希望显示每个图像,然后跟随一个打印输出句子。但实际上我得到的是3个句子一起打印出来,然后跟着3张图片。
我尝试在print()之前使用time.sleep(1),但没有用。有什么方法可以让plt.imshow()和print()的输出交错在一起?

这个线程可能会对你有所帮助:https://dev59.com/FWw15IYBdhLWcg3wVKJ1 - Saif Charaniya
1个回答

1

虽然不是你要求的内容,但它可以达到相同的目的:

for i in range(3):
    plt.figure()
    plt.imshow(I[i])
    plt.title("some explanation for image " + str(i))

Jupyter notebook showing images with titles


谢谢。我尝试了类似于你的代码:使用ax.annotation()添加文本注释。 - wakeupbuddy

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接