我正在尝试使用该包plot3D
以基于第四个变量的颜色绘制我的 xyz 数据。
我的数据如下所示:
data.frame(xx,yy,zz,Ammpl)
xx yy zz Ammpl
1 63021.71 403105.0 1.181028516 1170
2 63021.71 403105.0 0.977028516 1381
3 63021.71 403105.0 0.861028516 807
4 63021.71 403105.0 0.784028516 668
5 63021.71 403105.0 0.620028516 19919
6 63021.71 403105.0 0.455028516 32500
7 63021.71 403105.0 0.446028516 32500
8 63021.71 403105.0 0.436028516 32500
9 63021.71 403105.0 0.426028516 32500
10 63021.71 403105.0 0.281028516 17464
我做的第一件事是从包akima
中使用 function interp
。创建常规网格
s100<-interp(xx,yy,zz, xo=seq(min(xx):max(xx), length=30, yo=seq(min(yy):max(yy), length=30), duplicate="mean")
从plot3D
使用的包中的功能slice3D
slice3D(x = s100$x, y = s100$y, z = s100$z, colvar = ampl,
ys = 1:10, zs = NULL, NAcol = "black",
expand = 0.4, theta = 45, phi = 45)
我的问题是我不知道如何构建数据ampl
, colvar
因此它将在此图中提供着色。
我已经尝试了很多东西,但我认为这是我卡住的地方。
在example(slice3D)
他们使用oxsat$val
from data(oxsat)
来创建colvar
.
> dim(Oxsat$val)
[1] 180 90 33