相关理论:

  1. 东八区是指东经120度线的时间。
  2. 时角,中午为0,下午为正,1小时为15°

1. 案例01

lon <- 114 + 36 / 60 + 19 / 3600
lat <- 30 + 29 / 60 + 49 / 3600

str_time <- "2022-12-12 12:35:00"
time <- as.POSIXct(str_time)

info <- suncalc(time, lon, lat)
## 赤纬角    : -23.18    
## 太阳高度角: 36.22     
## 太阳方位角: 183.82    
## ---
## 北京时间       : 2022-12-12 12:35:00
## 当地时间       : 2022-12-12 12:13:25.2
## ---
## 日出时间(local): 2022-12-12 06:58:26.371031
## 日落时间(local): 2022-12-12 17:01:33.628969
## ---
## 日出时间(UTC8) : 2022-12-12 07:20:01.171031
## 日落时间(UTC8) : 2022-12-12 17:23:08.428969
info
##    angle_elev angle_azimuth angle_sigma               delta_minute
##         <num>         <num>       <num>                 <Duration>
## 1:      36.22        183.82   -23.18372 -1294.8s (~-21.58 minutes)
##             time_local          time_begin            time_end
##                 <POSc>              <POSc>              <POSc>
## 1: 2022-12-12 12:13:25 2022-12-12 06:58:26 2022-12-12 17:01:33

2. 案例02

lon <- 114 + 36 / 60 + 19 / 3600
lat <- 30 + 29 / 60 + 49 / 3600

str_time <- "2022-12-12 14:46:00"
time <- as.POSIXct(str_time)

info <- suncalc(time, lon, lat)
## 赤纬角    : -23.18    
## 太阳高度角: 26.11     
## 太阳方位角: 217.10    
## ---
## 北京时间       : 2022-12-12 14:46:00
## 当地时间       : 2022-12-12 14:24:25.2
## ---
## 日出时间(local): 2022-12-12 06:58:26.371031
## 日落时间(local): 2022-12-12 17:01:33.628969
## ---
## 日出时间(UTC8) : 2022-12-12 07:20:01.171031
## 日落时间(UTC8) : 2022-12-12 17:23:08.428969
info
##    angle_elev angle_azimuth angle_sigma               delta_minute
##         <num>         <num>       <num>                 <Duration>
## 1:      26.11         217.1   -23.18372 -1294.8s (~-21.58 minutes)
##             time_local          time_begin            time_end
##                 <POSc>              <POSc>              <POSc>
## 1: 2022-12-12 14:24:25 2022-12-12 06:58:26 2022-12-12 17:01:33

注意: 1. 太阳的方位角和影子的方位角,相差180°。 2. 太阳方位角到正前方:逆时针则减,顺时针则加