library (plotly)
## Loading required package: ggplot2
##
## Attaching package: 'plotly'
## The following object is masked from 'package:ggplot2':
##
## last_plot
## The following object is masked from 'package:stats':
##
## filter
## The following object is masked from 'package:graphics':
##
## layout
Aprenda a trazar marcadores, líneas y líneas 3D agregando propiedades plot_ly(). Esto significa que todas las técnicas aprendidas en las Secciones 3.1 y 3.2 pueden reutilizarse para gráficos 3D.
La figura 8.1 muestra un diagrama de dispersión en el cual hay diferentes colores que dependen de la cantidad.
plot_ly(mpg, x = ~cty, y = ~hwy, z = ~cyl) %>%
add_markers(color = ~cyl)
Para caminos 3D usamos add_paths() ya que esta a diferencia del 2D agrega una variable adicional. Un ejemplo claro es la grafica 8.2 que nos muestra un camino con interpolación de color en 3D.
plot_ly(mpg, x = ~cty, y = ~hwy, z = ~cyl) %>%
add_paths(color = ~displ)
Para caminos 3D usamos add_paths() ya que esta a diferencia del 2D agrega una variable adicional. Un ejemplo claro es la grafica 8.2 que nos muestra un camino con interpolación de color en 3D.
plot_ly(mpg, x = ~cty, y = ~hwy, z = ~cyl) %>%
add_lines(color = ~displ)
Para las líneas que no son 3D, puede crear varias líneas especificando una variable de agrupación. Use group_by() para crear múltiples líneas 3D.
plot_ly(mpg, x = ~cty, y = ~hwy, z = ~cyl) %>%
group_by(cyl) %>%
add_lines(color = ~displ)
Si queremos establecer títulos de eje o algo más específico para la definición de eje, la relación entre ejes o la configuración predeterminada de la cámara lo haría a través de scence.
plot_ly(mpg, x = ~cty, y = ~hwy, z = ~cyl) %>%
add_lines(color = ~displ) %>%
layout(
scene = list(
xaxis = list(title = "MPG city"),
yaxis = list(title = "MPG highway"),
zaxis = list(title = "Number of cylinders")
)
)
Por medio de la grafica 8.5 podemos ver la configuración de títulos de ejes en un gráfico 3D.
x <- seq_len(nrow(volcano)) + 100
y <- seq_len(ncol(volcano)) + 500
plot_ly() %>% add_surface(x = ~x, y = ~y, z = ~volcano)