为什么我从 PyEphem 得到错误的 solar alt/az?
Why am I getting the wrong solar alt/az from PyEphem?
我今天才开始使用 PyEphem,所以当我尝试从一个观察点计算太阳高度角和方位角时,我有点不知所措,为什么我会得到如此难以置信的错误结果。代码真的很简单所以我无法想象它哪里出错了:
import ephem
loc = ephem.Observer()
loc.lon = -118.897123
loc.lat = 34.247778
loc.elevation = 55
sun = ephem.Sun()
sun.compute(loc)
当我打印出 loc
时,我得到:
<ephem.Observer date='2020/6/26 21:10:06' epoch='2000/1/1 12:00:00' lon='-6812:18:12.0' lat='1962:15:11.3' elevation=55.0m horizon=0:00:00.0 temp=15.0C pressure=1010.0mBar>
lat/long 和时间都没有问题,尽管它们在 print(loc)
语句中的显示有点奇怪。在南加州仍然是 2:10PM,所以没有理由 sun.alt
和 sun.az
应该分别打印出 1.299
和 6.011
。
谁能解释一下这里的问题是什么? PyEphem 看起来像一个很棒的库,如果我能弄清楚如何正确使用它的话。感谢您的帮助!
将 lat
和 lon
设置为字符串并将 alt
和 az
格式化为字符串:
>>> loc = ephem.Observer()
>>> loc.lon = '-118.897123'
>>> loc.lat = '34.247778'
>>> sun = ephem.Sun()
>>> sun.compute(loc)
>>> f"{sun.alt} {sun.az}"
'64:36:51.4 251:28:08.8'
>>> loc
<ephem.Observer date='2020/6/26 21:43:46' epoch='2000/1/1 12:00:00' lon='-118:53:49.6' lat='34:14:52.0' elevation=0.0m horizon=0:00:00.0 temp=15.0C pressure=1010.0mBar>
>>>
我今天才开始使用 PyEphem,所以当我尝试从一个观察点计算太阳高度角和方位角时,我有点不知所措,为什么我会得到如此难以置信的错误结果。代码真的很简单所以我无法想象它哪里出错了:
import ephem
loc = ephem.Observer()
loc.lon = -118.897123
loc.lat = 34.247778
loc.elevation = 55
sun = ephem.Sun()
sun.compute(loc)
当我打印出 loc
时,我得到:
<ephem.Observer date='2020/6/26 21:10:06' epoch='2000/1/1 12:00:00' lon='-6812:18:12.0' lat='1962:15:11.3' elevation=55.0m horizon=0:00:00.0 temp=15.0C pressure=1010.0mBar>
lat/long 和时间都没有问题,尽管它们在 print(loc)
语句中的显示有点奇怪。在南加州仍然是 2:10PM,所以没有理由 sun.alt
和 sun.az
应该分别打印出 1.299
和 6.011
。
谁能解释一下这里的问题是什么? PyEphem 看起来像一个很棒的库,如果我能弄清楚如何正确使用它的话。感谢您的帮助!
将 lat
和 lon
设置为字符串并将 alt
和 az
格式化为字符串:
>>> loc = ephem.Observer()
>>> loc.lon = '-118.897123'
>>> loc.lat = '34.247778'
>>> sun = ephem.Sun()
>>> sun.compute(loc)
>>> f"{sun.alt} {sun.az}"
'64:36:51.4 251:28:08.8'
>>> loc
<ephem.Observer date='2020/6/26 21:43:46' epoch='2000/1/1 12:00:00' lon='-118:53:49.6' lat='34:14:52.0' elevation=0.0m horizon=0:00:00.0 temp=15.0C pressure=1010.0mBar>
>>>