使用astroquery从Simbad查询NGC/IC天体数据的精度与去重问题
NGC/IC星表高精度数据获取问题与脚本实现
- 正在编写Python脚本,目标是获取NGC和IC星表中所有天体的信息,核心需要的字段包括:名称、J2000赤经(RA)、J2000赤纬(Dec)、天体类型;还希望能获取星座信息和B星等,但实现难度较大。
- 已从OpenNGC获取相关数据,但坐标精度达不到出版物星图的要求,计划通过合并多数据集来提升精度——精度不足会直接导致深空天体(DSO)与恒星位置偏移,影响星图准确性。
- 使用Simbad查询时遇到大量重复条目问题:比如NGC 188星团会返回团内每个天体的单独条目及对应星等,为了仅保留天体主体信息,暂时移除了B星等字段,后续会根据需求手动从OpenNGC补充星等数据。
- 已耗时一整天寻找高精度星表,尝试过Vizier的
VII/118/ngc2000星表,但精度未达到OpenNGC的水准。
当前使用的脚本如下:
#!/usr/bin/env python # -*- coding: utf-8 -*- from astroquery.simbad import Simbad from astropy.table import Table # 获取所有NGC/IC天体 def query_deep_sky_objects(catalog): adql_query = f""" SELECT TOP 10000 main_id, otype, ra, dec FROM basic WHERE main_id LIKE 'NGC%' OR main_id LIKE 'IC%' ORDER BY main_id ASC """ result = Simbad.query_tap(adql_query) return result objects = query_deep_sky_objects('NGC') objects.write('simbad_objects.csv', format='csv', overwrite=True)
内容的提问来源于stack exchange,提问作者Unix
相关产品推荐
相关产品推荐

