我正在用matplotlib, 从一些.fits文件中制作一些星系速度的数字。问题是图中的轴以像素为单位显示了银河系的大小,我想将它们显示为偏角和 RightAcension(以角度单位)。我已经知道每个像素的大小为 0.396 弧秒。如何在 X 和 Y 轴上将像素转换为弧秒?
代码如下:
##############################################################################
# Generally the image information is located in the Primary HDU, also known
# as extension 0. Here, we use `astropy.io.fits.getdata()` to read the image
# data from this first extension using the keyword argument ``ext=0``:
image_data = fits.getdata(image_file, ext=0)
##############################################################################
# The data is now stored as a 2D numpy array. Print the dimensions using the
# shape attribute:
print(image_data.shape)
##############################################################################
# Display the image data:
fig = plt.figure()
plt.imshow(image_data, cmap='Spectral_r', origin='lower', vmin=-maior_pixel, vmax=maior_pixel)
plt.colorbar()
fig.suptitle(f'{gals_header["MANGAID"]}', fontsize=20, fontweight='bold')
ax = fig.add_subplot(111)
fig.subplots_adjust(top=0.85)
ax.set_title('RC')
ax.set_xlabel('pixelsx')
ax.set_ylabel('pixelsy')
还有更多的代码,但我只想展示我认为相关的部分(如有必要,我可以在评论中添加更多代码)。此代码基于此链接中的示例代码:https ://docs.astropy.org/en/stable/generated/examples/io/plot_fits-image.html#sphx-glr-download-generated-examples-io-情节适合图像-py
我已经尝试了一些东西,比如Axes.convert_xunits
一些pyplot.axes
功能,但没有任何效果(或者我只是不知道如何正确使用它们)。
有人可以帮忙吗?先感谢您。
慕的地6264312
相关分类