geo.gridFilter() 函数
geo.gridFilter()
是实验性的,并且随时可能更改。
geo.gridFilter()
通过指定的地理区域过滤数据。
该函数将输入数据与位于指定区域内的一组 S2 单元 ID 令牌进行比较。输入数据必须包含一个 s2_cell_id
列,该列是组键的一部分。
注意:S2 网格单元可能无法与定义的区域完美对齐,因此结果可能包含坐标位于区域外部但在部分被区域覆盖的 S2 网格单元内的数据。在 geo.gridFilter()
之后使用 geo.toRows()
和 geo.strictFilter()
来精确过滤点。
函数类型签名
(
<-tables: stream[{B with s2_cell_id: string}],
region: A,
?level: int,
?maxSize: int,
?minSize: int,
?s2cellIDLevel: int,
?units: {distance: string},
) => stream[{B with s2_cell_id: string}] where A: Record
有关更多信息,请参阅函数类型签名。
参数
region
(必填)包含所需数据点的区域。
为形状指定记录属性。
minSize
覆盖指定区域的最小单元数。默认为 24
。
maxSize
覆盖指定区域的最大单元数。默认为 -1
(无限制)。
level
S2 单元级别的网格单元。默认为 -1
。
注意: level
与 minSize
和 maxSize
互斥,并且必须小于或等于 s2cellIDLevel
。
s2cellIDLevel
s2_cell_id
标签中使用的S2 单元级别。默认为 -1
(从 S2 单元 ID 令牌检测 S2 单元级别)。
units
定义距离测量单位的记录。默认为 geo.units
选项。
tables
输入数据。默认为管道转发数据 (<-
)。
示例
将数据过滤到指定区域
import "experimental/geo"
data
|> geo.gridFilter(region: {lat: 40.69335938, lon: -73.30078125, radius: 20.0})
此页内容对您有帮助吗?
感谢您的反馈!