相关理论:

  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    
## 太阳高度角: 34.63     
## 太阳方位角: 195.84    
## ---
## 北京时间       : 2022-12-12 12:35:00
## 当地时间       : 2022-12-12 12:56:34.8
## ---
## 日出时间(local): 2022-12-12 06:58:26.371031
## 日落时间(local): 2022-12-12 17:01:33.628969
## ---
## 日出时间(UTC8) : 2022-12-12 06:36:51.571031
## 日落时间(UTC8) : 2022-12-12 16:39:58.828969
info
##    angle_elev angle_azimuth angle_sigma             delta_minute
##         <num>         <num>       <num>               <Duration>
## 1:      34.63        195.84   -23.18372 1294.8s (~21.58 minutes)
##             time_local          time_begin            time_end
##                 <POSc>              <POSc>              <POSc>
## 1: 2022-12-12 12:56:34 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    
## 太阳高度角: 19.97     
## 太阳方位角: 225.57    
## ---
## 北京时间       : 2022-12-12 14:46:00
## 当地时间       : 2022-12-12 15:07:34.8
## ---
## 日出时间(local): 2022-12-12 06:58:26.371031
## 日落时间(local): 2022-12-12 17:01:33.628969
## ---
## 日出时间(UTC8) : 2022-12-12 06:36:51.571031
## 日落时间(UTC8) : 2022-12-12 16:39:58.828969
info
##    angle_elev angle_azimuth angle_sigma             delta_minute
##         <num>         <num>       <num>               <Duration>
## 1:      19.97        225.57   -23.18372 1294.8s (~21.58 minutes)
##             time_local          time_begin            time_end
##                 <POSc>              <POSc>              <POSc>
## 1: 2022-12-12 15:07:34 2022-12-12 06:58:26 2022-12-12 17:01:33

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