- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想使用 terra
包逐层写入栅格。我正在使用以下代码
library(terra)
# first create a raster
r1 <- r2 <- r3 <- rast(nrow=10, ncol=10)
# Assign random cell values
values(r1) <- runif(ncell(r1))
values(r2) <- runif(ncell(r2))
values(r3) <- runif(ncell(r3))
s <- c(r1, r2, r3)
s
plot(s)
writeRaster(s, names(s), overwrite=TRUE)
它给了我以下错误
Error: [writeRaster] cannot open file: C:/Users/nn/Desktop/lyr.1In addition: Warning message:C:/Users/nn/Desktop/lyr.1: No such file or directory (GDAL error 4)
我想使用以下函数在 raster
包中提供相同的输出
raster::writeRaster(s, names(s), bylayer=TRUE, format='GTiff', overwrite=TRUE)
最佳答案
你还需要多做一些工作
dir.create("test")
setwd("test")
f <- paste0("test", 1:nlyr(s), ".tif")
r <- writeRaster(s, f, overwrite=TRUE)
list.files()
# [1] "test1.tif" "test2.tif" "test3.tif"
r
#class : SpatRaster
#dimensions : 10, 10, 3 (nrow, ncol, nlyr)
#resolution : 36, 18 (x, y)
#extent : -180, 180, -90, 90 (xmin, xmax, ymin, ymax)
#coord. ref. : +proj=longlat +datum=WGS84 +no_defs
#sources : test1.tif
# test2.tif
# test3.tif
#names : lyr.1, lyr.1, lyr.1
#min values : 0.02075680, 0.01058152, 0.02179740
#max values : 0.9874134, 0.9990475, 0.9883418
这也有效:
names(s) <- c("a", "b", "c")
x <- writeRaster(s, names(s), overwrite=TRUE, filetype="GTiff")
但请注意文件名没有 tif 扩展名
sources(x)
# source nlyr
#1 ./test/a 1
#2 ./test/b 1
#3 ./test/c 1
所以我会做
z <- writeRaster(s, paste0(names(s), ".tif"), overwrite=TRUE)
#class : SpatRaster
#dimensions : 10, 10, 3 (nrow, ncol, nlyr)
#resolution : 36, 18 (x, y)
#extent : -180, 180, -90, 90 (xmin, xmax, ymin, ymax)
#coord. ref. : +proj=longlat +datum=WGS84 +no_defs
#sources : a.tif
# b.tif
# c.tif
#names : a, b, c
#min values : 0.02075680, 0.01058152, 0.02179740
#max values : 0.9874134, 0.9990475, 0.9883418
现在改进了错误消息(参见 this issue)
关于r - 如何在 R 中使用 terra 包编写栅格 bylayer?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68253507/
我正在更改我的空间工作流程以使用 terra 包而不是 raster 包。使用光栅包,我曾经将多个光栅直接读入堆栈。 filelist_temp <- list.files(datapath("Cli
我想使用 aggregate terra 包中的 R 函数来聚合栅格,使用分位数方法作为聚合函数。下面,我使用 quantile 中的 R base 函数使用本地包目录中的栅格计算第 50 个百分位数
我正在与 raster 一起工作包,我尝试切换到 terra但由于一些我不明白的原因,terra无法重现 raster 的相同操作与包并行工作时,例如 snowfall和 future.apply .
包 terra 中是否有等价于 sp::over() 的东西?要获取显示 SpatVector 的哪些几何形状覆盖另一个 SpatVector 的哪些几何形状的数据框——像这样,但仅使用 terra:
包 terra 中是否有等价于 sp::over() 的东西?要获取显示 SpatVector 的哪些几何形状覆盖另一个 SpatVector 的哪些几何形状的数据框——像这样,但仅使用 terra:
我正在尝试使用 terra 包中的 global() 函数计算 spatRaster 中的非 NA 值。除了 "isNA" 和 "notNA" 之外,所有函数(均值、最大值、sd 等)似乎都有效。对于
基本上是标题。我知道您可以使用 rast() 读取栅格文件夹,但我只想堆叠两个单独读取的栅格。谢谢 最佳答案 请注意,使用 raster::stack,您可以在多个参数 (stack(x1,x2,x3
我正在阅读 terralang关于 terra 语言的网站 "a new low-level system programming language that is designed tointero
正如问题所说,我正在尝试将多层 terra 栅格转换为 rasterStack 对象,以便我可以将其与另一个包(biomod2),仅接受较旧的栅格对象。 有没有有效的方法可以做到这一点?我唯一的其他选
我在生成 Terras 数字序列时遇到问题。 这是我失败的尝试: using System; using System.Collections.Generic; using System.Linq;
长 Ascii 字符串文本可能会或可能不会被粉碎并通过使用复杂的数学公式/算法压缩成哈希类型的 ascii“校验和”。就像可以压缩的空气一样。 要将数兆字节的 ascii 文本压缩成 128 字节左右
我已经使用出色的 terra 将单变量 .nc 文件作为 SpatRaster 对象读入 R包,目的是根据像元质心拟合地质统计模型。为此,我需要使用来自 SpatRaster 的数据构建一个数据框,其
总结:如何使用 SpatRaster 对象作为 ggmap 的 basemap ? 您好,我正在使用 ggplot 在 R 中绘制 map 。我想要 OpenStreetMaps 的 basemap
我尝试使用 getData(来自栅格包)读取 DEM 栅格,然后将 RasterLayer 转换为 SpatRaster(terra 包)。第一步成功了,但第二步失败了。 library(raster
我研究 Terra (LUNA) 区 block 链并使用 js 库 (@terra-money/terra.js)。但我找不到获取交易 list 的方法。如何使用 NodeJs 通过钱包地址获取交易
我想使用 terra 包逐层写入栅格。我正在使用以下代码 library(terra) # first create a raster r1 <- r2 <- r3 <- rast(nrow=10,
我在 Windows 10 中使用 RStudio 2021.09.2 中的 R 4.1.2。我正在处理空间数据,包括矢量和栅格,但三天前命令库(栅格)开始给我这个警告: Error: package
我想使用 terra 包逐层写入栅格。我正在使用以下代码 library(terra) # first create a raster r1 <- r2 <- r3 <- rast(nrow=10,
我在 Windows 10 中使用 RStudio 2021.09.2 中的 R 4.1.2。我正在处理空间数据,包括矢量和栅格,但三天前命令库(栅格)开始给我这个警告: Error: package
我正在尝试将 terra 组件(第三方角度组件)集成到 ionic 3 中。我们收到如下错误。 为了加载我们添加的 scss 文件,我们使用了 webpack.config.js 中的加载器。 web
我是一名优秀的程序员,十分优秀!