请参见下图。通过首先使用as.owin将两列数据帧转换为研究窗口(称为study_win),然后在窗口顶部绘制另一个两列数据框(称为study_points)来创建此图像。
很明显,这些点都在窗户内!但是当我打电话时
ppp(study_points[,1],study_points[,2],win = study_window)
它说我的大部分点都被拒绝,因为它在窗外。有人能告诉我发生了什么事吗?
谢谢!
答案 0 :(得分:1)
首先,您可以退一步检查窗口对象study_window
是否符合您的意图。您可以自己绘制或打印此对象。 study_window
的图表将显示(您也可以在问题中提供的图中看到这一点),窗口的边界是点的断开散布,而不是连接的多边形。打印输出as.owin
会显示它是一个二进制像素蒙版,具有非常小的区域,而不是多边形区域。 as.owin
的帮助说明,当x,y
应用于包含as.owin
坐标列的数据框时,它会将它们解释为谎言中像素的像素坐标在窗口内。
所以,发生的事情是study_window <- owin(poly=df)
创建了一个窗口,该窗口由数据框中每个(x,y)位置的一个像素组成。那不是你想要的; (x,y)坐标意味着多边形边界的顶点。
要获得所需的窗口,请执行mypattern <- ppp(x, y, poly=df)
之类的操作,其中df是顶点(x,y)坐标的数据框。
要一步完成所有操作,请键入类似\n
的内容,其中x和y是窗口中各点坐标的向量。
答案 1 :(得分:0)
所以我用“owin”解决了这个问题,并将区域指定为多边形;而不是“as.owin”。我不知道owin和as.owin之间的区别,但我很高兴它有效......