无需单独进行旋转:
numpy具有内置
numpy.rot90(m, k=1, axes=(0,1))
功能。因此,默认情况下,矩阵在第一维和第二维上旋转。
如果要深一层旋转,只需设置发生旋转的轴,深一层即可(如果要沿不同方向旋转,可以选择交换它们)。或根据文档指定:
axes: (2,) array_like阵列在轴定义的平面中旋转。轴必须不同。
因此,我们在 y 和 z 平面上旋转(如果我们标注尺寸 x , y 和 z ),因此我们指定
(2,1)或
(1,2)。
axes当您想 左右 旋转时,您所要做的就是正确设置:
np.rot90(a **,axes=(2,1)** ) # rightnp.rot90(a **,axes=(1,2)** ) # left
这将旋转所有矩阵,例如:
>>> np.rot90(a,axes=(2,1))array([[[7, 4, 1], [8, 5, 2], [9, 6, 3]], [[7, 4, 1], [8, 5, 2], [9, 6, 3]], [[7, 4, 1], [8, 5, 2], [9, 6, 3]], [[7, 4, 1], [8, 5, 2], [9, 6, 3]]])
或者,如果您想 向左旋转 :
>>> np.rot90(a,axes=(1,2))array([[[3, 6, 9], [2, 5, 8], [1, 4, 7]], [[3, 6, 9], [2, 5, 8], [1, 4, 7]], [[3, 6, 9], [2, 5, 8], [1, 4, 7]], [[3, 6, 9], [2, 5, 8], [1, 4, 7]]])
请注意,您只能指定
axes从 numpy的1.12和(可能)未来的版本 。



