我的目标是根据地形高程数据(pp3z轴)创建一个im对象,类似于bei.extra($elev$grad).我首先从我的数据集创建了一个pp3对象:

x <- elev_test$x
y <- elev_test$y
z <- elev_test$z
X <- pp3(x, y, z, c(0, 102), c(0, 152), c(90, 102))
plot(X)

enter image description here

然后,我试图将pp3对象强制转换为类im,但as.im抛出了一个错误:

> Elev_im <- as.im(X)
Error in as.im.default(X) : Can't convert X to a pixel image

如何获得所需的im件物品?

推荐答案

as.im这样的转换函数旨在将数据从一种格式转换为另一种表示相同信息的格式.

您正在try 从(x,y,z)个采样点的样本中推断曲面的空间高度.这不是格式之间的转换;这是某种内插.

我建议您使用位置的(x,y)个坐标创建一个二维点图案,并使用z个坐标作为该图案的标记.然后将这些印记打磨光滑,以获得表面.

类似于:

X <- ppp(elev_test$x, elev_test$y, c(0, 102), c(0, 152), marks=elev_test$z)
Z <- Smooth(X)

然后,您可以try 不同的参数到Smooth.ppp,以获得最佳的插值式.

另一种可能是使用nnmark而不是Smooth.ppp来获得由小平面组成的曲面(如果您的点来自稻田,这将更好).你得自己做这些决定,因为电脑不够聪明.

R相关问答推荐

如何使用stat_extract_all正确提取我的目标值?

警告:lmdif:info = 0. nls. lm()函数的输入参数不正确

从R导出全局环境中的所有sf(numrames)对象

ggplot的轴标签保存在officer中时被剪切

我想在R中总结一个巨大的数据框架,使我只需要唯一的lat、lon、Date(Year)和Maxium Value""""""""

par函数中的缩写,比如mgp,mar,mai是如何被破译的?

计算两列中满足特定条件连续行之间的平均值

自定义gggraph,使geom_abline图层仅在沿x轴的特定范围内显示

远离理论值的伽马密度曲线下面积的近似

有没有办法一次粘贴所有列

抽样变换-REXP与RWEIBUR

如何在访问之前下载的输入时同时上传和处理所有指定的shiny 输入?

了解nchar在列表上的意外行为

子样本间系数检验的比较

如何捕获这个shiny 的、可扩展的react 性用户输入矩阵作为另一个react 性对象,以便进一步操作?

Ggplot2:添加更多特定 colored颜色 的线条

我怎么才能把一盘棋变成一盘棋呢?

将y轴格式更改为R中的百分比

如果缺少时间,如何向日期-时间列添加时间

在R中的Sankey图表中添加标题