[英]Transposing, rotating, and combining 2D arrays in Python
I have a 2D array, and it size is 93 X 93.我有一个二维数组,它的大小是 93 X 93。
import numpy as np
import matplotlib.pyplot as plt
size = 93
arr2D = np.eye(size, size, dtype=float)
for i in range(size):
for j in range(size):
arr2D[i][j] = np.arctan((i+1)/(j+1))
arr2D = np.cos(arr2D)
plt.imshow(arr2D)
plt.colorbar(fraction=0.0455)
plt.show()
I would like to create 4 same arrays, transpose, and combine them (size: 186 X 186) to make them look like the figure below, how can I do this?我想创建4个相同的arrays,转置,并组合它们(大小:186 X 186),使它们看起来像下图,我该怎么做?
you can use np.flipud and np.fliplr for flipping and np.vstack and np.c_ for stacking您可以使用np.flipud和np.fliplr进行翻转,使用np.vstack和np.c_进行堆叠
stacked_arr = np.c_[np.fliplr(arr2D),arr2D]
stacked_arr_flipped = np.flipud(np.c_[np.fliplr(arr2D),arr2D])
new_arr = np.vstack((stacked_arr_flipped ,stacked_arr ))
plt.imshow(new_arr)
plt.colorbar(fraction=0.0455)
plt.show()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.