0

我需要为特定研究地点提取 NDVI 的 Sentinal 2 数据。我使用 RGIS 工具并遵循参考手册https://cran.r-project.org/web/packages/RGISTools/RGISTools.pdf。我能够获得并绘制 NDVI 的时间序列。

现在我必须为我的学习区域做同样的程序。我有一个适用于我所在地区的 shapefile,可在此处访问https://gis.utah.gov/data/boundaries/zip-codes/。看起来 shapefile 在使用之前需要转换为光栅或 sf 类型的对象。我曾经st_as_sf将 shapefile 转换为 sf 但我在senSearch函数中收到以下错误,

if (as.integer(json$feed$ opensearch:totalResults) > 0) { 中的错误:参数长度为零

这是我第一次使用此类数据,不胜感激。

4

1 回答 1

0

看起来您尝试使用范围参数进行搜索。此参数仅接受投影为 lonlat 投影的空间对象。您可以将 region 参数与任何空间 obj(sp、sf 或 raster)一起使用。

这里有一个您所在地区的示例:

library(RGISTools)
library(rgdal)
shp<-readOGR("ZipCodes_shp/ZipCodes")
plot(shp)

senres<-senSearch(startDate = as.Date("2018210", "%Y%j"),
                  endDate = as.Date("2018215", "%Y%j"),
                  platform = "Sentinel-2",
                  region = shp,
                  product = "S2MSI1C",
                  username="user",
                  password="pass")
于 2020-02-14T08:54:22.013 回答