如何重新创建此3D直方图?

时间:2012-11-14 19:08:47

标签: r 3d rotation data-visualization rgl

我在谈论这张照片:

问题:

这是R,不是Matlab对吗?在页面下面,它表示它是用R ....制作的。

我该怎么做?我的意思是,如何用这个先进的绿色表面和这个网格创建这样的三维散点图?我现在如何制作简单的散点图和三维散点图,但是如何创建这样的高级图片呢?这包是哪个?

我想将它包含在一张纸张中,此纸张应自动旋转。我知道如何将它包含在我的tex发行版中,但因此我需要单个png。所以例如我制作动画的1000张单张照片。但我怎样才能得到R?我需要旋转它,然后将每个小旋转保存为图形文件。

非常感谢你的帮助,我最大的问题是创建这个图形(包?)以及如何使它旋转(r代码?)

1 个答案:

答案 0 :(得分:6)

  1. 要创建此图,您可以查看persp函数。您可以更改参数以旋转图形。这是一个演示:

    require(grDevices) # for trans3d
    x <- seq(-10, 10, length= 30)
    y <- x
    f <- function(x,y) { r <- sqrt(x^2+y^2); 10 * sin(r)/r }
    z <- outer(x, y, f)
    z[is.na(z)] <- 1
    persp(x, y, z, theta = 90, phi = 30, expand = 0.5, col = "lightgreen")
    
  2. enter image description here

    更改theta = 30时:

    persp(x, y, z, theta = 30, phi = 30, expand = 0.5, col = "lightgreen")
    

    enter image description here

    1. 对于颜色,您可以键入colors()以查看可以使用的颜色。目前,我发现lightgreen可能是您想要的最接近的颜色。