A la pregunta, tal vez con una formulación mejorable de un usuario de la lista de R, sobre cómo representar una distribución normal bivariada con correlación 0.5 en 3D di ayer esta solución:
library(mvtnorm ) x <- y <- -20:20 / 10 z <- matrix(0, length(x ), length(y ) ) m <- c(0,0) sigma <- matrix(c(1, 0.5, 0.5, 1 ), 2 ) for(i in 1: length(x ) ) for(j in 1:length(y ) ) z[i,j] <- dmvnorm(c(x[i], y[j] ), c(0,0), sigma ) persp(x, y, z ) No obstante, la solución alternativa de Carlos Ortega es toda una virguería que merece ser reproducida en estas páginas:
library(fMultivar) library(rgl) x = (-40:40)/10 X = grid2d(x) z = dnorm2d(X$x, X$y, rho = 0.5) Z = list(x = x, y = x, z = matrix(z, ncol = length(x))) open3d() bg3d("white") material3d(col="black") persp3d(Z$x, Z$y, Z$z, aspect=c(1, 1, 0.5), col = "lightblue", xlab = "X", ylab = "Y", zlab = "Z") play3d(spin3d(axis=c(0,0,1), rpm=5), duration=20) ¿Os gusta?