0

请看下图。该图像是通过首先使用 as.owin 将两列数据框转换为研究窗口(称为 study_win),然后在窗口顶部绘制另一个两列数据框(称为 study_points)来创建的。

很明显,这些点位于窗口内!但是,当我打电话时

ppp(study_points[,1],study_points[,2],win = study_window) 

它说我的大部分观点都被拒绝为躺在窗外。有人可以告诉我发生了什么吗?

谢谢!

在此处输入图像描述

4

2 回答 2

1

首先,您可以退后一步检查窗口对象study_window是否是您想要的。您可以自行绘制或打印此对象。的图study_window将显示(您也可以在您在问题中提供的图中看到这一点)窗口的边界是不连贯的点散布,而不是连接的多边形。的打印输出study_window会显示它是一个二进制像素掩码,面积非常小,而不是多边形区域。帮助as.owin解释说,当as.owin应用于包含坐标列的数据帧时,它将它们解释为位于window 内的像素x,y的像素坐标。

因此,发生的事情是as.owin在数据帧中的每个 (x,y) 位置创建了一个由一个像素组成的窗口。那不是你想要的;(x,y) 坐标是多边形边界的顶点。

要获得所需的窗口,请执行类似的操作study_window <- owin(poly=df),其中 df 是顶点的 (x,y) 坐标的数据框。

要一步完成所有操作,请键入类似mypattern <- ppp(x, y, poly=df)where x 和 y 是窗口中点的坐标向量的内容。

于 2015-09-26T02:51:27.637 回答
0

所以我通过使用“owin”解决了这个问题,并将区域指定为多边形;而不是“as.owin”。我不知道 owin 和 as.owin 之间的区别,但我很高兴它起作用了......

于 2015-09-25T00:57:04.910 回答