R spatstat-ppp和owin(窗口)对象之间的不同窗口单位

R spatstat-ppp和owin(窗口)对象之间的不同窗口单位,r,spatstat,R,Spatstat,我们如何在ppp对象和owin对象之间转换窗口的“单位” 我试图分析从开放街道地图收集的空间数据 首先,我获取新加坡各地的POI数据,然后将它们转换为ppp对象 if(!require("osmdata")) install.packages("osmdata") library(osmdata) q <- getbb("Singapore") %>% opq() %>% add_osm_feature("amenity") places <- osmdata_sf(q

我们如何在ppp对象和owin对象之间转换窗口的“单位”

我试图分析从开放街道地图收集的空间数据

首先,我获取新加坡各地的POI数据,然后将它们转换为
ppp
对象

if(!require("osmdata")) install.packages("osmdata")
library(osmdata)
q <- getbb("Singapore") %>%
opq() %>%
add_osm_feature("amenity")

places <- osmdata_sf(q)
police <- places$osm_points %>% 
   filter(amenity == "police") %>%
   st_transform(., "+proj=utm +zone=19 +ellps=GRS80 +datum=NAD83")

police.sp  <- as(police, "Spatial")  # Create Spatial* object
police.ppp <- as(police.sp, "ppp")      # Create ppp object
class(police.ppp)
结果,当我试图绘制文件时,所有的警察点都在地图之外

有没有办法调整单位?我在那里有没有走错步

请帮忙


谢谢大家!

确保两个数据集使用相同的CRS。读入
s
后,应使用
st_transform
spTransform
转换为与警察检查站相同的坐标系(UTM区域19)

s    <- readOGR(".", "Region_Census2010")
sg    <- as(s, "owin")
summary(sg)
enclosing rectangle: [2637.87, 56396.44] x [15748.72, 50256.33] units
                     (53760 x 34510 units)

summary(police.ppp)
Window: rectangle = [1280705.4, 1323492.3] x [19833441, 19854045] units
                    (42790 x 20600 units)