2016-05-10 27 views
-3

次元(180,360)のデータを持つフィットファイルがあります。これは180行で、各行に360要素あります。私がそれをプロットするとき、x軸の範囲は0から360まで、y軸の範囲は0から180までです。x軸とy軸が実際に緯度であり、経度。私は天体を使用しています。pythonでフィッティングするファイル(Astropy)

+3

こんにちは、[SO]へようこそ。 [ツアー]のタイムアウトを取って[助けて] – Sampada

答えて

1

ファイルと呼ばれるFITS持っていると仮定すると:'filename.fits'を:

from astropy.io import fits 
from astropy.wcs import WCS 

with fits.open('filename.fits') as hdus: 
    data = hdus[0].data # sometimes data is also saved in the extension 1 or "sci" 
    header = hdus[0].header 
    wcs = WCS(hdus[0].header) 

pixel = np.array([[10, 10], [20, 20]]) # pixel 10/10 and 20/20 
world = w.wcs_pix2world(pixcrd, 1) # convert the list of pixel to coordinates 

今、あなたはあなたがdataheaderwcsで、あなたはその後、新しいファイルを書き込むことができますたければ好きなものをも行うことができます。

hdulist = fits.HDUList([fits.PrimaryHDU(data, header=header)]) 
hdulist.writeto('new_name.fits') 
# hdulist.writeto('filename.fits', clobber=True) # or replace the original 

本質的に同じで詳細な情報が存在するastropy-documentationをご覧ください。

+0

返事をありがとうございます。私はAstropyを使用しています、問題は私のフィットファイルです - ヘッダーにはWCS情報はありません。ですから、グリッドを操作する必要がある人物を適切に調整するには、その方法を理解できません。 – Madhusudan

+0

@Madhusudanもう少しやりたいことを詳しく述べるために質問を編集できますか? – MSeifert

+0

確かに、ファイルxとy軸から得られたプロットでピクセルです... x軸とy軸を経度(0〜360度)と緯度(-90〜90度)にします。私のフィットヘッダーにWCS情報は含まれていません。 – Madhusudan

関連する問題