2016-11-28 10 views
-1

У меня проблема, с python, pyfits и numpy. Я открываю а припадки файл с обычнымОпорная ось Pyfits

file = pyfits.open('file.fits', memap = True) 

при вызове

file.info() 

Это показывает мне, что набор данных содержал имеет форму (2,1024,1024,546):

No. Name   Type  Cards Dimensions Format 
0 PRIMARY  PrimaryHDU  12 (2, 1024, 1024, 546) float32 

тогда, я иду вперед и импортировать этот массив в Numpy массив с помощью

data = file[0].data 

, когда я тогда хочу, чтобы показать форму этого массива, используя

print (data.shape) 

он показывает форму

(546,1024,1024,2) 

Я понятия не имею, почему он делает это. Важно знать, какая размерность принадлежит той оси.

Любая помощь приветствуется! спасибо.

ответ

1

См http://docs.astropy.org/en/stable/io/fits/appendix/faq.html#what-convention-does-astropy-use-for-indexing-such-as-of-image-coordinates

FITS оси (как показано на .info()) методом, как приказано в NAXISn ключевых слов, в FORTRAN порядке. Numpy, основанный на Python, который, в свою очередь, основан на C, использует C-упорядоченные оси.

(В качестве примечания, пожалуйста, имейте в виду, что автономный модуль pyfits обесценивается, и вместо этого следует использовать astropy.io.fits).

 Смежные вопросы

  • Нет связанных вопросов^_^