该线程解释了如何使用 akima 包从 x/y/z 坐标创建矩阵,但我宁愿不使用新包。毕竟,您可以在 gnuplot 的一个命令中执行相同的操作:gnuplot interpolation。
在上述 gnuplot 线程中使用数据点矩阵的图像绘图可以在 R 中通过调用 image() 命令来实现。
那么曲面图呢,我们如何插入 x/y/z 点以生成 2d 热图?
该线程解释了如何使用 akima 包从 x/y/z 坐标创建矩阵,但我宁愿不使用新包。毕竟,您可以在 gnuplot 的一个命令中执行相同的操作:gnuplot interpolation。
在上述 gnuplot 线程中使用数据点矩阵的图像绘图可以在 R 中通过调用 image() 命令来实现。
那么曲面图呢,我们如何插入 x/y/z 点以生成 2d 热图?
好吧,如果你不喜欢akima::interp
,也许stats::loess
是你的口味?
topo.loess <- loess (z ~ x * y, topo, degree = 2, span = 0.2)
x <- seq (min (topo$x), max (topo$x), .05)
y <- seq (min (topo$y), max (topo$y), .05)
interpolated <- predict (topo.loess, expand.grid (x = x, y = y))
image (x= x, y= y, z = interpolated, asp = 1)
points (topo)
(也沿着 MASS 的路线)
否则:为什么不使用 gnuplot?虽然它也可能被认为是一个不同的软件......