如何在R中裁剪空间线数据框?

时间:2018-07-27 18:24:38

标签: r spatial clip

我有一个空间线数据框,我想将其裁剪/裁剪到特定的边界区域。我尝试使用gClip函数(如此处的帖子中的建议https://gis.stackexchange.com/questions/46954/clip-spatial-object-to-bounding-box-in-r),但是,我一直收到错误消息。

我使用的第一个数据集是空间线数据框,该数据框显示了北美的道路,其范围要大一些。我正在使用的第二个数据集是一个空间点数据框,其中显示了45个研究站/位置的位置。我的目标是在路线图上显示这45个点,并在适当的范围内进行剪裁(即,不是北美所有地区,而是加拿大魁北克的一小块区域)。

我要做的第一件事是确定边界框的限制

> bbox(stations)
      min       max
 lon -74.37355 -73.21924
 lat  45.29292  45.83554

>b<-bbox(stations)

然后,我尝试使用gClip函数:

> gClip <- function(shp, bb){
   if(class(bb) == "matrix") b_poly <- as(extent(as.vector(t(bb))), "SpatialPolygons")
   else b_poly <- as(extent(bb), "SpatialPolygons")
   gIntersection(shp, b_poly, byid = TRUE)
 } 
>roads_clipped<-gClip(roads, b) 

我收到以下错误消息: plot.window(...)中的错误:需要有限的“ xlim”值 另外:警告消息: 1:在min(x)中:没有min不可缺少的参数;返回Inf 2:在max(x)中:没有max的所有必输参数;返回-Inf 3:在min(x)中:没有min的必填参数;返回Inf 4:在max(x)中:没有max的所有必输参数;返回-Inf

我在做什么错了?

0 个答案:

没有答案