0

基本上,我只想使用已合并到 astropy 中的 pyfits从此处找到的 r-waveband fit 文件中获取图像数据。这是我的尝试:

from astropy.io import fits
import matplotlib.pyplot as plt

hdulist = fits.open("frame-r-004646-1-0019.fits")
hdulist.info()

imgplot = plt.imshow(hdulist[0].data)
imgplot.set_cmap('binary_r')

plt.show()
hdulist.close()

目前,我只能看到微小的小点,而不是 jpeg 图像中看到的明亮星星。此外,ImageHDU 不包含图像(它不能,因为它是一维数组)知道为什么会这样吗?

最后,我试图从 (ra, dec) 的图像中识别我的目标星系。拟合文件有一个 (ra, dec) 与之关联,并且像素比例为每像素 0.396 弧秒。所以我想知道合并的(ra,dec)正在谈论哪个角落,这样我就可以推断图像中目标的位置!

4

1 回答 1

3

你会想要一些像样的颜色标准化,像这样:

imshow(im,vmin=np.percentile(im,5),vmax=np.percentile(im,95),cmap='gray')

其中 im=hdulist[0].data

对于渲染 WCS,我建议您使用aplpy,如果您远离真正的查看器,例如 ds9。

gc = aplpy.FITSFigure("frame-r-004646-1-0019.fits")
gc.show_grayscale(vmin=np.percentile(im,5),vmax=np.percentile(im,95))
于 2014-10-11T20:09:24.613 回答