其他
【更新无法自动下载数据问题】rgee能用了!R语言也可以使用Google Earth Engine了!
喜大普奔!rgee能用了!R语言也可以使用Google Earth Engine了!
去年的时候曾经写过一个推文,关于rgee,但是由于rgee的不知道是BUG还是啥问题,认证一直不成功,没有办法愉快的使用,今天我收到了来自rgee的作者之一的邮件,告诉我了这个BUG已经有了解决方法,我再次试验了rgee,成功运行!
rgee安装
我使用了R4.0.3版本,建议大家使用最新的R语言版本,R4.0版本我目前已经用了几个月,感觉和3差别不大,以前的一些包也都可以使用,强烈大家更新R4.0最新版本。
安装RGEE环境,使用下面的代码,自动安装,需要偶尔手动输入一下Y或者其它参数,根据提示输入即可:
library(rgee)
ee_install()
代码执行开始,会弹出下面的一些提示:
RGEE启动
rgee
初始化,运行下面的代码开始启动RGEE,注意要翻墙!:
library(rgee)
ee_Initialize()
启动后会弹出一个网页,让你登陆GEE,生成一串启动代码:
受网络影响可能会卡一下,我重启了一下,重新运行了启动代码,显示启动成功!
试验代码:
createTimeBand <-function(img) {
year <- ee$Date(img$get('system:time_start'))$get('year')$subtract(1991L)
ee$Image(year)$byte()$addBands(img)
}
collection <- ee$
ImageCollection('NOAA/DMSP-OLS/NIGHTTIME_LIGHTS')$
select('stable_lights')$
map(createTimeBand)
col_reduce <- collection$reduce(ee$Reducer$linearFit())
col_reduce <- col_reduce$addBands(
col_reduce$select('scale'))
ee_print(col_reduce)
Map$setCenter(9.08203, 47.39835, 3)
Map$addLayer(
eeObject = col_reduce,
visParams = list(
bands = c("scale", "offset", "scale"),
min = 0,
max = c(0.18, 20, -0.18)
),
name = "stable lights trend"
)
常见问题
ConnectionRefusedError: [WinError 10061] 鐢变簬鐩爣璁$畻鏈虹Н鏋佹嫆缁濓紝鏃犳硶杩炴帴銆
这个问题最常见,原因嘛,国内用户应该都听说过“翻墙”,出现这个就是翻墙没成功,挂墙头上了,换个靠谱的梯子吧,一定要开启全局翻墙,仅仅浏览器翻出去是没用的。
Error in py_call_impl(callable, dotskeywords) : Evaluation error: Unable to access object (object is from previous session and is now invalid).
当一个R工程中带有rgee代码时,打开就出现上面的报错,这是为啥呢?因为你R语言环境里存了东西,记住,使用rgee的时候,除了代码,什么都不要保存!!!除了代码,什么都不要保存!!!除了代码,什么都不要保存!!!
只要R语言环境中有代码以外的东西,打开rgee工程文件的时候就会报错,所以,记得,使用rgee的时候,除了代码,其它一律不保存!当然了,运算结果你自己保留好,但是R语言环境里的中间过程不能留,否则下次打开会出错。
这种情况下怎么办呢?打扫干净运行环境,重启R就好
EEException: Request payload size exceeds the limit: 10485760 bytes. 数据量太大了,需要减小点范围
通过Google Drive下载数据报错
Error:Don't know how to coerce an object of class into a
两个原因:
googledrive
包过期了,需要更新一下ee_Initialize(drive = T)
启动rgee的时候没有给tidyverse API赋予Google Drive权限
具体做法:
ee_clean_credentials()
删除Google Earth Engine认证信息ee_Initialize(drive = T)
重新进行认证,如上图所示,一定要赋予tidyverse API查看、修改、创建、删除所有Google云端硬盘文件权限。
参考文献
https://github.com/r-spatial/rgee rgee从没入门到放弃 R语言安装部署基础 【文献阅读】Google Earth Engine:人人可用的行星级地理空间分析平台 https://github.com/r-spatial/rgee/issues/175 https://github.com/r-spatial/rgee/issues/170
点击阅读原文跳转Github rgee主页