Pyephem,定义和绘制不同时代的恒星

时间:2015-02-22 17:57:54

标签: python matplotlib astronomy pyephem xephem

我正在尝试制作一个程序,显示我选择的星星,从地球上的不同位置和不同的时代。我已经让它工作,以便我可以显示ephem的数据库中的对象,例如Venus,但我要显示的星星不在目录中。我如何定义摩羯座的星星,以便他们像任何其他明星一样阅读该节目?

我已经研究过并发现了类似于我想要的文章:

可用的星星列表: https://github.com/brandon-rhodes/pyephem/blob/master/ephem/stars.py

绘制北斗七星的示例脚本:http://nbviewer.ipython.org/github/brandon-rhodes/pyephem/blob/master/issues/github-issue-61.ipynb#

我用来生成观察站点和所需对象的代码:

#Define observer location
gatech = Observer()
gatech.lon = '-3.0' #Longitude positive in the East
gatech.lat = '+51.0' #Latitude positive in the North
gatech.elevation = 0 

#Set date of observation and then prints Altitude and Azimuth of object
gatech.date = ((2000, 1, 1, 9, 30, 0)) #Year,month,day,hour,minute,second

v1 = Venus(gatech)
v1altrad = ('%.12f' % float(v1.alt))
v1azrad = ('%.12f' % float(v1.az -3.14159))

将其输入matplotlib函数可生成正确的图像。

据我所知,我只需要弄明白如何定义我想要看到的星星,因为其他一切似乎都有效。任何帮助策划摩羯座星星的人都会非常感激。

1 个答案:

答案 0 :(得分:2)

你真正想做的是将任意赤道坐标转换为给定位置和时间的水平坐标。

至少有两个选择:

您可以创建自己的“stars.py”版本,例如“mystars.py”和     导入,

或做类似的事情

star = ephem.FixedBody(ra='21:00:00', dec='-20:00:00')
star.compute(gatech)
print(star.alt, star.az)