sunlu123的个人博客分享 http://blog.sciencenet.cn/u/sunlu123

博文

根据需要的空间范围对目标图层进行空间裁剪

已有 1415 次阅读 2019-10-3 14:17 |系统分类:科研笔记


在生态学及其相关领域研究中,经常需要绘制环境图层,有时是全球的(这样就不需要进行裁剪了),但是需要用到区域的时候,就需要裁剪一下。目前在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)


}




http://blog.sciencenet.cn/blog-3416345-1200474.html

上一篇:根据参考图层属性参数值对目标图层进行空间重采样(spatial resample)。

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备14006957 )

GMT+8, 2019-11-18 14:32

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部