使用R从网格创建点

时间:2016-05-04 03:26:13

标签: r sp

我希望获得一个.csv文件,其中包含与plot上每个网格方块中心对应的坐标列表。

我已经能够映射polygon并覆盖grid,但我不确定a)每个网格中心的绘图点需要什么正方形,和b)从点中提取坐标 - 尽管后者应该在a)完成时掉出来。

Grid Plot如下所示:

Grid Plot

任何建议都将不胜感激。

  First we need to make a regular grid
      NGSA.grid=spsample(NGSA.union, n = 1000, type="regular", nsig = 2,    offset = c(0.5,0.5),pretty = FALSE)
      str(NGSA.grid)
      gridded(NGSA.grid)=TRUE
      plot(NGSA.grid,pch=19,cex=0.1,col="green",axes=TRUE)
      plot(NGSA.OGR, add=TRUE, pch=16, cex=0.5)
      proj4string(NGSA.grid)==proj4string(NGSA.OGR)

1 个答案:

答案 0 :(得分:1)

首先关注?readOGR以创建我将在此处使用的scot_BNG对象。

然后创建网格对象:

> scotgrid = spsample(scot_BNG, n=1000, type="regular", nsig=2, pretty=FALSE)
> gridded(scotgrid)=TRUE

然后coordinates函数可以获得网格中心。请注意,您可以使用上面创建的scotgrid对象之前将其设为gridded对象。那时它是一个SpatialPoints对象。无论如何:

> head(coordinates(scotgrid))
           x1       x2
[1,] 211728.1 535835.7
[2,] 247407.1 535835.7
[3,] 238487.4 544755.4
[4,] 247407.1 544755.4
[5,] 265246.6 544755.4
[6,] 274166.3 544755.4

如果你想在网格上绘制单元格中心,你可以使用points,在绘图之前提取那些单元格坐标:

> plot(scotgrid)
> points(scotgrid,pch=19,col="red",cex=.25)

points in grid cells