在进行相位相关之后,我得到了一个像图像一样存储在FITS文件中的numpy数组。我想在this images的3D和2D绘图中看到中心的一个峰 这里有一些代码,我创建了一个裁剪中心的函数。
我试图使用arange函数为x和y生成一些值。我得到this。 我的问题是如何使x和y成为数据数组的行和列的值。
# opening and loading fits file data
data = fits.open('../exposures/POC_FILE2.fits')[0].data
# crop center portion of numpy array
data = cropcenter(data, 300, 300)
x = np.arange(0, data.shape[0], 1) # 2d numpy array
y = np.arange(0, data.shape[1], 1) # 2d numpy array
x, y = np.meshgrid(x, y)
'''
for i in range(1,17,2):
xi = data[:, i]
yi = data[i, :]
xi = np.linspace(min(xi), max(xi))
yi = np.linspace(min(yi), max(yi))
'''
fig = plt.figure()
ax = Axes3D(fig)
ax.plot_surface(x, x, data, rstride=1, cstride=1, cmap=plt.cm.hot)
ax.contourf(x, y, data, zdir='z', offset=-2, cmap=plt.cm.hot)
ax.set_zlim(-2, 2)
plt.show()