我正在寻找一种方法来自动返回MODIS图块(例如h12 v4)作为经度和纬度的函数。
我希望MODIS包可以使用getTile(***)来实现。我在使用getTile()时看到了一个很好的GUI,但我正在寻找一个自动方法作为long / lat的函数。
感谢, 杰夫
答案 0 :(得分:1)
一个好建议!当前包含在 MODIS 'develop'分支中,并且肯定会成为将来软件包版本的一部分(从 1.1.4 开始)。在下一个CRAN版本发布之前,只需从GitHub安装当前的“开发”版本,然后查看它是否对您有用:
fun1<- function(x, y) {
mutate(mydata, x =
ifelse(y == 10, 0,
ifelse(y == 1, 0.5/7,
ifelse(y == 2, 1/7,
ifelse(y == 3, 3/7,
ifelse(y == 4, 5.5/7,
ifelse(y == 5, 1,
ifelse(y == 6, 2.5,
ifelse(y== 7, 4.5,
6)))))))))
}
mydata <- fun1(newvar_test, oldvar)
不过,有一个重要警告:目前,这仅适用于 sp (即# devtools::install_github("MatMatt/MODIS", ref = "develop")
library(MODIS)
## set point coordinates (taken from https://en.wikipedia.org/wiki/Frankfurt)
dat = data.frame(lon = 8.682222, lat = 50.110556, loc = "Frankfurt am Main")
pts = sf::st_as_sf(dat, coords = c("lon", "lat"), crs = 4326)
## get overlying tile
tls = getTile(pts)
tls@tile
# [1] "h18v03"
)和 sf 点输入。