是否存在R函数来查找点之间的相对距离?

问题描述

我在XY图上分布了一些点,如图所示。有没有办法识别多边形的顶点(在这种情况下为三角形),并根据点距离为每个点分配3D坐标值?
顶点将是(1、0、0),(0、1、0)和(0、0、1),而其他4个点应在该参考上计算,例如中心点应类似于(0.33 ,0.4、0.27)。

enter image description here

解决方法

如果期望凸形,我可能会从凸包开始,从那里可以每3个点检查一次,如果角度低于某个阈值,则从多边形中删除中间点。然后,您可以使用标准算法来获取多边形的中心点。

另一种解决方案,如果近似值很好,则可以只使用所有点的加权中心。 X值的平均值和Y值的平均值给您x / y点。如果对凸包点执行此操作可能会更有效。如果在给定区域内有太多点,这可能会有偏差。 IE:假设三角形的一个角附近有100点,而三角形的其他2个角附近只有10点。它将以100分的权重压向那个角。

不熟悉R,所以这是我能做的最好的事。