gpt4 book ai didi

r - 如何在不插值的情况下从不规则点数据制作光栅

转载 作者:行者123 更新时间:2023-12-03 04:55:44 29 4
gpt4 key购买 nike

我试图从不规则间隔的点数据库中制作光栅图像。数据看起来像 -

> head(s100_ras)
x y z
1 267573.9 2633781 213.29545
2 262224.4 2633781 69.78261
3 263742.7 2633781 51.21951
4 259328.4 2633781 301.98413
5 264109.8 2633781 141.72414
6 255094.8 2633781 88.90244

我希望这些“z”值位于我创建的网格中

# Create a fine mesh grid
my_mesh=expand.grid(seq(min(s100_ras$Y),max(s100_ras$Y),l=100),
seq(min(s100_ras$X),max(s100_ras$X),l=100))

我还希望将数据点之外的网格点的 z 值指定为“NA”。网格上的点如下所示:https://drive.google.com/file/d/0B6GUNg-8d30vYzlwTkhvaHBFTnc/edit?usp=sharing当我绘制时

plot(my_mesh)
points(s100_ras$Y, s100_ras$X, pch="*", col='blue')

问题是我不确定如何在此基础上构建,以下步骤不起作用,因为我的网格和数据点的比例不同!!

library(rgdal)
library(raster)
xyz<-cbind(my_mesh, s100_ras)
r <- rasterFromXYZ(xyz)
image(r)

如果我尝试仅使用数据点(没有任何网格)来制作栅格,R 会抛出错误,因为我的数据间隔不规则!

library(sp)
s100_ras <- data.frame(expand.grid(x = s100_ras$Y, y = s100_ras$X),
z = as.vector(s100_ras$mean))
coordinates(s100_ras) <- ~x+y
proj4string(s100_ras) <- CRS("+proj=utm +zone=46 +datum=WGS84")
gridded(s100_ras) = TRUE

suggested tolerance minimum: 0.916421
Error in points2grid(points, tolerance, round) :
dimension 1 : coordinate intervals are not constant

此外,我试图使用“光栅包”的“光栅化”功能(对于不规则网格),但无法使用它:(。我知道如何插值并制作规则网格,但是为了原创性,我想避免插值。是否可以在不使用 IDW 或克里金法的情况下制作不规则间隔数据点的栅格?提前致谢。

最佳答案

关于r - 如何在不插值的情况下从不规则点数据制作光栅,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20306020/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com