我有一个numpy数组,其元素在for循环中更新:
a = np.array([[1,2,3],[4,5,6],[7,8,9]])
for t in range(0,10):
imshow(a)
for i in range(0,a.shape[0]):
for j in range(0,a.shape[1]):
a[i][j] += 1
我想在每次迭代时显示数组,但是imshow()不起作用,它只是在循环结束后显示图像。
另外,我用的是Ipython笔记本
我在网上发现了不同的东西,但没有一个在我的电脑上运行(例如,我试图使用matplotlib的动画模块)
奇怪的是,如果我尝试使用标准的python提示符来执行这个示例(http://matplotlib.org/examples/animation/dynamic_image2.html),那么一切都可以正常工作,而在Ipython笔记本上则不行。有人能解释我为什么吗?
注意:
也许我把代码简单化了
我正在研究一个森林火灾模型,数组是一个网格,其中0=空站点,1=树,2=火。
在每个时间步骤(迭代):
我想用一个彩色地图来显示我的模型的进化
imshow(a)
将数组a的值绘制为像素值,但它不会显示该绘图。要在for循环的每次迭代后查看图像,需要添加show()
。这应该符合您的要求:
相关问题 更多 >
编程相关推荐