我正在尝试制作一部电影(或任何能够按顺序显示结果的东西),使用一组被堆叠成第三维的2D numpy数组。
为了说明我的意思,想象一个9x3x3的numpy数组,其中我们有一个由9个不同的3x3数组组成的序列,如下所示:
import numpy as np
#creating an array where a position is occupied by
# 1 and the others are zero
a = [[[0,0,1],[0,0,0],[0,0,0]],[[0,1,0],[0,0,0],[0,0,0]], [[1,0,0],[0,0,0],[0,0,0]], [[0,0,0],[0,0,1],[0,0,0]], [[0,0,0],[0,1,0],[0,0,0]], [[0,0,0],[1,0,0],[0,0,0]], [[0,0,0],[0,0,0],[0,0,1]], [[0,0,0],[0,0,0],[0,1,0]], [[0,0,0],[0,0,0],[1,0,0]]]
a = np.array(a)
这样a[0],... a[n] 将会返回类似如下内容:
In [10]: a[1]
Out[10]:
array([[0, 1, 0],
[0, 0, 0],
[0, 0, 0]])
但是将数字1的位置进行变换,再加上以下几行代码绘制简单的图形:
img = plt.figure(figsize = (8,8))
plt.imshow(a[0], origin = 'lower')
plt.colorbar(shrink = 0.5)
plt.show(img)
将产生以下输出:
那么,创建电影的最适当方式是什么?显示类似于上面图片的结果,使每个结果在'a'的第一维中堆叠,以便观察每个不同步骤(帧)的变化情况?
感谢您的关注和时间!