st_azimuth

這很重要

地理值的支援目前已 在公開預覽階段。 一般可支援幾何值。

回傳從第一點到第二點的北方位角,單位為弧度,在[0, 2π)中。

關於對應的 Databricks SQL 函式,請參見 st_azimuth 函數。

語法

from pyspark.databricks.sql import functions as dbf

dbf.st_azimuth(col1=<col1>, col2=<col2>)

參數

參數 類型 Description
col1 pyspark.sql.Column 或 str 第一個地理或幾何值代表一個點。
col2 pyspark.sql.Column 或 str 第二個地理或幾何值代表一個點。

註釋

輸入通常會是兩個 GEOGRAPHY 或兩個 GEOMETRY 值,否則會回傳錯誤。 兩個輸入值都預期代表點,否則會回傳錯誤。 這兩個點預期具有相同的 SRID 值,否則會回傳錯誤。

若兩點的二維投影相等,則回傳方位角為零。

None 如果兩個輸入值中有任一為空,則回傳。

範例

from pyspark.databricks.sql import functions as dbf
from pyspark.sql.functions import round, lit
import math

df = spark.createDataFrame([('POINT(0 45)', 'POINT(1 46)')], ['wkt1', 'wkt2'])
df.select(round(dbf.st_azimuth(dbf.st_geomfromtext('wkt1'), dbf.st_geomfromtext('wkt2')) * 180.0 / math.pi, 3).alias('result')).collect()
[Row(result=45.0)]