Más sobre ciencia de datos: cienciadedatos.net o joaquinamatrodrigo.github.io
library(animation)
# Para instalar animation primero hay instalar en el sistema operativo: en el caso
# de ubuntu 16.4 se consigue con los siguientes comandos:
# sudo add-apt-repository -y ppa:cran/imagemagick
# sudo apt-get update
# sudo apt-get install -y libmagick++-dev
# Paquetes para los ejemplos
library(viridis)
library(ggplot2)
library(ranger)
Se muestra una función 3D desde varios ángulos.
funcion <- function(x1, x2){
sin(x2)*exp(1-cos(x1))^2 + cos(x1)*exp(1-sin(x2))^2 + (x1-x2)^2
}
x1 <- seq(-10, 0, length.out = 50)
x2 <- seq(-6.5, 0, length.out = 50)
f_x <- outer(x1, x2, FUN = funcion)
colores <- viridis::magma(n = 100, alpha = 0.7)
z.facet.center <- (f_x[-1, -1] + f_x[-1, -ncol(f_x)] +
f_x[-nrow(f_x), -1] +
f_x[-nrow(f_x), -ncol(f_x)])/4
z.facet.range <- cut(z.facet.center, 100)
# Secuencia de ángulos con los que crear los gráficos
angulos <- seq(0, 360, 10)
saveGIF(
for (i in seq_along(angulos)) {
par(mai = c(0,0,0,0))
persp(x = x1, y = x2, z = f_x,
shade = 0.8,
r = 8,
phi = 10,
theta = angulos[i],
col = colores[z.facet.range],
axes = FALSE
)
},
# Nombre del gif
movie.name = "grafico3d.gif",
# Dimensiones
ani.width = 350,
ani.height = 350,
# Tiempo de duración de cada frame (segundos)
interval = 0.2
)
## [1] TRUE