r-raster相关内容

提取包含在空间面中的栅格像元数

我想创建一个函数来计算SpatialPolygonsDataframe对象的多边形内的栅格单元格的数量,并在不使用循环的情况下将值添加为新列。 我找不到该怎么做... 以下是我的代码: library(sp) library(raster) # Create a SpatialPolygonsDataframe and a raster objets to overlay # Poly ..
发布时间:2022-05-29 21:43:55 其他开发

标识矩阵中被一包围的零区域

我有一个二进制矩阵列表。在每个矩阵中,我希望检测被连接的黑色像素(1)的环(链)包围的白色像素(0)区域。 例如,在下面的矩阵中,有两个白色像素(零)区域,它们都完全被连接的1组成的“链”包围:2x2和3x2组0。 m # [,1] [,2] [,3] [,4] [,5] [,6] [,7] # [1,] 1 1 1 1 0 0 ..
发布时间:2022-05-13 19:01:57 其他开发

如何在栅格名称中插入空格?R

我尝试在栅格堆栈的层名称中添加空格 names(predstack)[[1]] names(predstack)[[1]] [1] "MSR670.max" 我知道这很愚蠢,但我计算了一个模型,花了7天的时间计算。不幸的是,有一个模型变量的名称中包含空格。 现在我想对堆栈进行预测,但这不起作用,因为出现以下错误: > Prediction2mod ..
发布时间:2022-04-22 21:51:49 其他开发

R RASTER::EXTRACT无法创建数据。帧

我希望使用RASTER::EXTRACT和SF对象从栅格中提取值。然而,我遇到了一些困难。我希望创建一个数据框,其中包含单元格号(以派生XY值)、提取的单元格值和ID字段(如果我从多行提取)。我通过以下几点做到了这一点: dtm_values ..
发布时间:2022-04-09 20:49:34 其他开发

为什么在重命名栅格堆叠图层时R会添加一个&q;x

我在R中有一个包含84个层的栅格堆叠/砖块,我试图根据199911到200610(1999年11月到2006年10月)的年份和月份来命名它们。然而,出于某种原因,R总是在我给我的层命名的开头加上一个“X”。 有人知道为什么会发生这种情况以及如何修复它吗?以下是我尝试过的一些方法: # Import raster brick rast ..
发布时间:2022-04-03 10:02:59 其他开发

为什么terra::cellSize()和raster::area()会生成不同的栅格单元面积估计值?

我刚刚注意到terra::cellSize()生成的单元格面积估计值与raster::area()生成的单元格面积估计值不匹配。 首先,为什么这两种方法不能提供相同的答案?第二,哪个估计最准确?请参见下面的示例。 library(raster) #> Loading required package: sp library(terra) #> terra version 1.3.4 # ..
发布时间:2022-03-23 17:06:53 其他开发

在 R 中识别传单中光栅的点击位置

我正在使用 shinydashboard 在 R leaflet 地图上绘制一个大型 lat-lon NetCDF raster.当我单击地图时,会弹出一个弹出窗口,显示行、列、经纬度位置和单击栅格点的值.(请参阅下面的可重现代码) 问题是,如果栅格足够大,我会遇到栅格变化.例如,这里我点击了一个应该有值的点,但结果是识别的点就是上面那个. 我认为这与 leaflet 使用的栅格是投影 ..
发布时间:2022-01-12 18:41:19 其他开发

从栅格计算器转移到 R 的条件命令

到目前为止,我在 ArcGIS 的栅格计算器中使用了以下语句: Con(("Land_use.rst" == -20), "Export.rst") 这会计算一个新的栅格,它只包含来自导出的数据,其中 Land_use 等于 -20.这正是我想要的.但我想在 R 中自动执行此操作,因为我必须多次这样做. 到目前为止,我得到了这样的东西: for (catch_dir in Dir_Li ..
发布时间:2021-11-17 01:37:39 其他开发

R中的空间线起点和终点

我正在尝试使用 sp 包来访问线串的起点和终点,类似于 ST_StartPoint 和 ST_EndPoint使用 psql 生成. 无论我如何尝试访问该行,我都会收到错误或 NULL 值: >onetrip@lines[[1]][1]onetrip@lines[[1]][1] 中的错误:“S4"类型的对象不可子集>onetrip@lines@Lines@coords错误:尝试从没有插槽的 ..
发布时间:2021-07-23 19:44:12 其他开发

网格单元内的采样点数

计算空间网格的每个网格单元内的采样点总数. 我想制作一个网格并计算每个网格单元内采样点的总数.我创建了一个随机生成的数据和网格,并尝试使用 sf 和 raster 包计算网格单元格内的记录数,使用以前类似的 SO 问题,但没有成功.我还研究了提取功能.我对空间分析相当陌生. 库(sf)图书馆(光栅)图书馆(tidyverse)图书馆(地图视图)图书馆(地图编辑)#用sf包试用# 加载一些 ..
发布时间:2021-07-23 19:43:28 其他开发

调用 library(raster) 或 require(raster) 会导致 Rstudio 中止会话

我以前在我的计算机上使用过光栅包,但最近,对库(光栅)或要求(光栅)的任何调用都会导致 Rstudio 中止会话 - “R 会话中止.R 遇到致命错误.会话被终止". 我尝试删除软件包并重新安装.install.package("raster") 工作,但随后 library 或 require 调用 raster 导致会话中止.我也试过重新启动 rstudio 和我的电脑. 在 Ma ..
发布时间:2021-07-10 21:19:20 其他开发

为什么 rasterToPoints 在第一次调用时产生错误而不是第二次调用?

我有一些代码可以遍历研究 ID 列表 (ids) 并将它们转换为单独的多边形/空间点.在第一次执行循环时,它会产生以下错误: (函数(x)中的错误:尝试应用非函数 这是来自 raster::rasterToPoints 函数.我已经查看了此函数的帮助部分中的示例,并且传递 fun=NULL 似乎是一种可接受的方法(过滤掉所有 NA 值).无论如何,所有值都等于 1,所以我尝试传递一个像 ..
发布时间:2021-07-03 18:44:30 其他开发

基于每个团块上网格单元数差异的子集 R 栅格堆栈

我想创建光栅堆栈的子集,并在前一层和下一层之间的差异在每个光栅层簇之后都是 NA 时将它们写为新堆栈.如果没有团块,我会按照罗伯特在这个问题中的回答来实现这一点(如下脚本所示).但是,我也想通过考虑团块来运行它.每层可能有 1 或 2 个团块.因此,从下面示例数据堆栈中的 layer 1 开始,我想确定团块编号,并为每个团块创建一个栅格堆栈子集,直到前一层和下一层之间没有重叠像素(即两层的区别都是 ..
发布时间:2021-07-02 20:33:29 其他开发

基于栅格层网格单元数差异的子集 R rasterstack

我想创建栅格堆栈的子集,并在上一层和下一层之间的差异全部为NA时将它们写为新的堆栈.即,从第1层开始,我想创建一个光栅堆栈的子集,直到前一层和下一层之间没有重叠像素(即两层之间的差异都是NA)所以我要的是;从第 1 层开始,保留上一层和下一层之间至少有 1 个公共像素的所有层,将它们写为 1 堆栈,然后移动到下一层.下面是一个示例数据和不成功的 for 循环.在这个例子中,我想保留层 1:8,命名 ..
发布时间:2021-07-02 20:33:19 其他开发

从堆叠光栅对象计算选定区域

因为我最近才开始使用 R 进行空间分析,所以我无论如何都不是地理学家或空间数据专家,我有一个 - 什么我认为是 - 相对简单的问题.我正在尝试计算满足特定条件的堆叠光栅对象的一部分区域使适应.更具体地说,来自深海的数据集南大西洋,我堆叠了两个光栅对象(深度和坡度)在坐标系 (WGS84) 和 x-y (Lat-Long) 中进一步相同位置.从堆叠的光栅对象,我想提取位于(例如)1000 到 400 ..
发布时间:2021-07-02 20:33:07 其他开发

RasterLayer 16 位转换为 RasterLayer 8 位

我曾尝试将 RasterLayer 16 位转换为 R 中的 RasterLayer 8 位,但没有成功.有什么想法吗? 谢谢! 解决方案 如果要将 RasterLayer 从 16 位转换为 8 位,则需要将值扩展到 8 位间隔(0-255 无符号)第一的.然后你可以将它保存为 8 位图像: #sample 光栅图书馆(光栅)ras16b ..
发布时间:2021-07-02 20:33:04 其他开发