我正在尝试访问 .fits 文件并绘制两列(很多!)。我使用 pyfits 来访问该文件,并且
plt.plotfile('3XMM_DR5.fits', delimiter=' ', cols=(0, 1), names=('x-axis','y-axis'))
但这不起作用。有没有其他选择?有没有办法使用python打开文件?为了访问数据表
我正在尝试访问 .fits 文件并绘制两列(很多!)。我使用 pyfits 来访问该文件,并且
plt.plotfile('3XMM_DR5.fits', delimiter=' ', cols=(0, 1), names=('x-axis','y-axis'))
但这不起作用。有没有其他选择?有没有办法使用python打开文件?为了访问数据表
根据for的文档:matplotlib
plotfile
注意:plotfile 旨在方便从平面文件中快速绘制数据;它不打算作为使用 pyplot 或 matplotlib 进行一般绘图的替代接口。
这不是很清楚。我认为“平面文件”只是指 CSV 数据或其他东西——在我的经验中,这个功能的使用并不多,而且它当然对 FITS 文件一无所知,这些文件很少在天文学之外使用。您在帖子中提到您使用 PyFITS 做了一些事情,但这在您的问题中没有得到任何证明。
顺便说一句,PyFITS 已经被弃用了好几年,它的功能被集成到Astropy中。
您可以使用以下命令从 FITS 文件中打开表astropy.Table.read
:
from astropy.table import Table
table = Table.read('3XMM_DR5.fits')
然后使用方括号符号访问列,例如:
plt.plot(table['whatever the x axis column is named'], table['y axis column name'])