1、地球在公转轨道上的位置(理想球面北半球夏半年昼长夜短)
2、纬度(理想球面纬度越高,昼夜分布越不平均)
3、海拔(同一地点海拔越高日出越早日落越晚)
4、天气状况(大气折射散射)
5、人为规定的非地方时时区(如乌鲁木齐采用东经116地方时授时,这就不是自然因素了)。
赤道上永远都是6点日出,18点日落
其它地方是不确定的,具体算法:日出时间=(24-昼长)/2
日落时间=日出时间+昼长
或:一天有24小时,包括白天和黑夜,夜长=24-昼长,而凌晨0:00可以看作是黑夜的中点,日出时间=夜长/2,日落时间=24-日出时间。