数据立方体的开关轴(拟合文件)

时间:2018-03-19 10:52:13

标签: python axis astronomy fits data-cube

我遇到了一些问题,我找不到任何问题的答案。

我试图在python中创建一个datacube,其中三个轴是andThen(Single.just(player)),即2个天空位置和红色移位。 我认为我生成多维数据集的代码有效,我将多维数据集定义为:

(RA,DEC,z)

其中cube = np.zeros([int(size_x),int(size_y),int(Nchannel)]) x是像素坐标,红色切片在通道中切片。有这个立方体,我用一些线条的强度填充它。最后,我将我的.fits标题定义如下:

y

这就是问题,我的cube.fits在"坏"方向。当我用ds9打开它时,z轴不是红移z ... 我怀疑标题不好,但在哪里可以在fit标题中指定轴? 干杯

1 个答案:

答案 0 :(得分:2)

轴确实是反转的,FITS使用Fortran约定(列主要顺序),而Python / Numpy使用C约定(行主要顺序)。 http://docs.astropy.org/en/latest/io/fits/appendix/faq.html#what-convention-does-astropy-use-for-indexing-such-as-of-image-coordinates

因此,对于您的多维数据集,您需要将轴定义为(z, y, x)

In [1]: import numpy as np

In [2]: from astropy.io import fits

In [3]: fits.ImageHDU(data=np.zeros((5,4,3))).header
Out[3]: 
XTENSION= 'IMAGE   '           / Image extension                                
BITPIX  =                  -64 / array data type                                
NAXIS   =                    3 / number of array dimensions                     
NAXIS1  =                    3                                                  
NAXIS2  =                    4                                                  
NAXIS3  =                    5                                                  
PCOUNT  =                    0 / number of parameters                           
GCOUNT  =                    1 / number of groups