polyline.rdp() 函数
polyline.rdp()
是实验性的,并且随时可能更改。
polyline.rdp()
将 Ramer Douglas Peucker (RDP) 算法应用于输入数据,以将由线段组成的曲线下采样为视觉上难以区分但点数更少的曲线。
函数类型签名
(
<-tables: stream[A],
?epsilon: float,
?retention: float,
?timeColumn: string,
?valColumn: string,
) => stream[B] where A: Record, B: Record
有关更多信息,请参阅函数类型签名。
参数
valColumn
包含给定曲线 Y 轴值的列。默认为 _value
。
timeColumn
包含给定曲线 X 轴值的列。默认为 _time
。
epsilon
确定压缩量的最大容差值。
Epsilon 应大于 0.0
。
retention
下采样后要保留的点百分比。
保留率应介于 0.0
和 100.0
之间。
tables
输入数据。默认为管道转发数据 (<-
)。
示例
使用 RDP 算法下采样数据
当使用 polyline.rdp()
时,请同时保留 epsilon
和 retention
未指定,以自动计算最大容差,从而生成视觉上难以区分的曲线。
import "experimental/polyline"
data
|> polyline.rdp()
使用 epsilon 为 1.5 的 RDP 算法下采样数据
import "experimental/polyline"
data
|> polyline.rdp(epsilon: 1.5)
使用保留率为 90% 的 RDP 算法下采样数据
import "experimental/polyline"
data
|> polyline.rdp(retention: 90.0)
此页面是否对您有帮助?
感谢您的反馈!