我想绘制一个 3D 数组M,其中
M <- array(runif(64),dim=c(4,4,4))
Run Code Online (Sandbox Code Playgroud)
这里有一个类似的问题,其中评论说这可以使用 R 中的常见 3D 绘图来完成,但我在 R 中找不到这样的函数可以用于绘制多维数组(例如,上面示例中的 3D 数组)。有什么建议如何去做吗?谢谢。
用于melt创建 x,y,z,值表,然后rgl绘制 3d 绘图:
library(reshape2)
library(rgl)
M=melt(M)
points3d(M$Var1,M$Var2,M$Var3)
Run Code Online (Sandbox Code Playgroud)
立方体中只有 64 个点。您可以对它们进行缩放和着色:
points3d(M$Var1,M$Var2,M$Var3,size=10,color=rainbow(10)[M$value*10])
Run Code Online (Sandbox Code Playgroud)
使用您喜欢的任何映射方法M$value来着色。不要真正使用彩虹调色板!