|
在生态学及其相关领域研究中,经常需要绘制环境图层,有时是全球的(这样就不需要进行裁剪了),但是需要用到区域的时候,就需要裁剪一下。目前在arcgis软件中,完成这一步是比较繁琐,并且需要熟悉arcgis里的相关操作。本文通过利用R语言以作为计算平台,完成对目标环境图层空间裁剪。
#读取软件包
library(rgdal)
library(raster)
#获取当前工作目录
lst <- list.files(path=getwd(),pattern='tif$',full.names = T) #输出bil 类型下的全部文件,也可以是其他格式。
lst
#指定的经纬度范围
ext<-extent(90,125,15,40) #前面两个是经度,后面两个是纬度
# 空间切割环境图层的核心代码
for(i in 1:length(lst)){
#根据空间范围对环境因子图层进行切割
layer<- crop(raster(lst[[i]]),ext)
#获取环境因子的名称
layer_number<-strsplit(strsplit(lst[[i]],split="/")[[1]][7],split=".tif")[[1]]
layer_name<-paste(layer_number,"asc",sep=".")
#写入切割后的图层,ascii 格式
writeRaster(layer, filename=layer_name, format="ascii", overwrite=TRUE)
}
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2025-1-3 05:23
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社