我将点云的坐标存储在矩阵中。很少有点与其他点是隔离的。有人知道我如何删除它们吗?点如图所示。如果您能帮助我,我将不胜感激,因为我不是数学专家 :( 由于我是新用户,我无法上传图片,但底部的点显示了包含 4 个我想删除的分散点的数据集。
………… ........... ………… ………… ………… ………… ...... ...
我将点云的坐标存储在矩阵中。很少有点与其他点是隔离的。有人知道我如何删除它们吗?点如图所示。如果您能帮助我,我将不胜感激,因为我不是数学专家 :( 由于我是新用户,我无法上传图片,但底部的点显示了包含 4 个我想删除的分散点的数据集。
………… ........... ………… ………… ………… ………… ...... ...
这里有一些代码希望对你有帮助:
data = Table[{Random[], Random[]}, {100}];
DynamicModule[{p = {0.5, 0.5}, linePts = {}, p1 = {0., 0.},
pts = data},
Manipulate[
Graphics[{Dynamic[Point[pts]], Locator[Dynamic[p]],
Line[Dynamic[If[p != p1, AppendTo[linePts, p]; p1 = p];
linePts]]}],
Row[{Button["updata",
pts = Select[pts, ! Graphics`Mesh`InPolygonQ[linePts, #] &]],
Button["copy points", Print[Flatten[Position[data, #] & /@ pts]]],
Button["Reset", linePts = {}; pts = data;]}]]]
您可以在图中绘制一个区域,然后在图中将其删除。“更新”按钮将显示剩余点,“复制点”将复制剩余点位置,“重置”将重置为原始图。