En este tutorial de programación en R , aprenderá a dibujar diagramas de dispersión .
Tabla de contenido:
- Ejemplos de datos
- Ejemplo 1: Diagrama de dispersión básico en R
- Ejemplo 2: Diagrama de dispersión con título y etiquetas definidos por el usuario
- Ejemplo 3: agregar línea de ajuste a diagrama de dispersión (función abline)
- Ejemplo 4: agregar una línea de ajuste uniforme al diagrama de dispersión (función lowess)
- Ejemplo 5: modificar símbolos de color y punto en diagrama de dispersión
- Ejemplo 6: Crear diagrama de dispersión con varios grupos
- Ejemplo 7: agregar leyenda al diagrama de dispersión
- Ejemplo 8: Matriz de diagramas de dispersión
- Ejemplo 9: diagrama de dispersión en el paquete ggplot2
- Ejemplo 10: Diagrama de dispersión en paquete de celosía
- Vídeo y recursos adicionales
Vamos a sumergirnos en:
Ejemplos de datos
Usaremos los siguientes dos vectores numéricos para los siguientes ejemplos de este tutorial de R (o RStudio):
establecer _ seed ( 42424 ) # Crear datos aleatorios x <- rnorm ( 500 ) y <- x + rnorm ( 500 ) |
Nuestros vectores contienen 500 valores cada uno y están correlacionados. ¡Ahora vamos a graficar estos datos!
Ejemplo 1: Diagrama de dispersión básico en R
Si queremos crear un diagrama de dispersión (también llamado XYplot) en Base R, debemos aplicar la función plot() como se muestra a continuación:
plot ( x, y ) # Diagrama de dispersión básico |
Figura 1: Diagrama de dispersión con especificaciones predeterminadas en Base R.
La Figura 1 muestra un diagrama XY de nuestros dos vectores de entrada. Como puede ver, nuestros vectores están correlacionados .
Sin embargo, el diagrama de dispersión es relativamente sencillo. En los siguientes ejemplos, aprenderá cómo ajustar los parámetros de nuestro diagrama de dispersión en R.
Ejemplo 2: Diagrama de dispersión con título y etiquetas definidos por el usuario
En el Ejemplo 2, crearemos un título principal y cambiaremos las etiquetas de los ejes de ambos ejes:
plot ( x, y, # Diagrama de dispersión con texto manual main = "Este es mi diagrama de dispersión" , xlab = "Mis valores X" , ylab = "Mis valores Y" ) |
Figura 2: Diagrama de dispersión con título principal definido por el usuario y etiquetas de eje.
Si compara la Figura 1 y la Figura 2, verá que el título y los ejes cambiaron.
Ejemplo 3: agregar línea de ajuste a diagrama de dispersión ( función abline )
Muy a menudo es útil agregar una línea de ajuste (o pendiente de regresión) a un gráfico XY para mostrar la correlación de las dos variables de entrada.
En el lenguaje de programación R, podemos hacer eso con la función abline:
plot ( x, y ) # Diagrama de dispersión con línea de ajuste abline ( lm ( y ~ x ) , col = "red" ) |
Figura 3: Diagrama de dispersión con línea recta de ajuste.
En la Figura 3, puede ver una línea de regresión roja, que se superpone a nuestro diagrama de dispersión original.
Ejemplo 4: agregar una línea de ajuste uniforme al diagrama de dispersión (función lowess)
En el Ejemplo 3, agregamos una línea de ajuste recta. Sin embargo, también es posible dibujar una línea de ajuste suave con la función lowess .
plot ( x, y ) # Diagrama de dispersión con líneas de ajuste suave ( lowess ( x, y ) , col = "green" ) |
Figura 4: Diagrama de dispersión con línea de ajuste suave.
Mire de cerca la línea verde en la Figura 4. No es perfectamente recta debido a la variación aleatoria en nuestros datos.
Ejemplo 5: modificar símbolos de color y punto en diagrama de dispersión
La función de gráfico proporciona varias opciones para cambiar el diseño de nuestro gráfico XY. Por ejemplo, podemos usar el argumento pch para ajustar los símbolos de los puntos o el argumento col para cambiar el color de los puntos:
plot ( x, y, # Diagrama de dispersión con color y símbolos pch = 16 , columna = "#1b98e0" ) |
Figura 5: Diagrama de dispersión con diferentes colores y símbolos de puntos.
Ejemplo 6: Crear diagrama de dispersión con varios grupos
También podemos usar las características de diseño de la función de diagrama para representar diferentes grupos en un solo diagrama de dispersión. Considere la siguiente variable de agrupación:
grupo <- rbinom ( 500 , 1 , 0.3 ) + 1 # Crear variable de agrupación |
Ahora, podemos usar nuestra variable de agrupación para especificar un símbolo de punto para cada punto…
group_pch <- group # Crear variable para símbolos group_pch [ group_pch == 1 ] <- 16 group_pch [ group_pch == 2 ] <- 8 |
…y para crear un indicador para el color de cada punto:
group_col <- group # Create variable for colors group_col [ group_col == 1 ] <- "red" group_col [ group_col == 2 ] <- "green" |
Si ahora usamos nuestros indicadores de símbolo y color dentro de la función de trazado, podemos dibujar múltiples diagramas de dispersión en el mismo gráfico :
plot ( x, y, # Diagrama de dispersión con dos grupos pch = group_pch, col = grupo_col ) |
Figura 6: Diagramas de dispersión múltiples en el mismo gráfico.
Se ve bien, pero en este punto el lector de nuestro gráfico no puede saber qué color representa a qué grupo… ¡Agreguemos una leyenda!
Ejemplo 7: agregar leyenda al diagrama de dispersión
Podemos agregar una leyenda a nuestro gráfico, que hemos creado en el Ejemplo 6, con la función de leyenda:
leyenda ( "superior izquierda" , # Agregar leyenda al diagrama de dispersión legend = c ( "Grupo 1" , "Grupo 2" ) , col = c ( "rojo" , "verde" ) , pc = c ( 16 , 8 ) ) |
Figura 7: Diagrama de dispersión con leyenda.
La Figura 7 es exactamente igual a la Figura 6, pero esta vez está visualizando los dos grupos en una leyenda.
Ejemplo 8: Matriz de diagramas de dispersión
Si queremos visualizar varios diagramas XY a la vez, también podemos crear una matriz de diagramas de dispersión. En Base R, podemos hacer esto basándonos en la función de pares .
Sin embargo, primero necesitamos ampliar nuestros datos de ejemplo. Con la siguiente sintaxis de R, podemos crear un vector aleatorio uniformemente distribuido y almacenar este vector junto con nuestros dos vectores de ejemplo x e y en el mismo marco de datos:
z <- runif ( 500 ) # Crear una tercera variable aleatoria data <- data . marco ( x, y, z ) # Agregar todos los vectores al marco de datos |
Ahora, podemos aplicar la función de pares para dibujar una matriz de diagrama de dispersión:
pares ( datos ) # Crear matriz de diagramas de dispersión |
Figura 8: Matriz de diagrama de dispersión creada con la función pairs().
Como puede ver en la Figura 8, cada celda de nuestra matriz de diagrama de dispersión representa la dependencia entre dos de nuestras variables.
Ejemplo 9: diagrama de dispersión en el paquete ggplot2
Hasta ahora, hemos creado todos los diagramas de dispersión con la instalación base de R. Sin embargo, existen varios paquetes que también brindan funciones para la creación de diagramas de dispersión.
En este ejemplo, le mostraré cómo dibujar un diagrama de dispersión con el paquete ggplot2 . Instalamos y cargamos el paquete:
instalar _ paquetes ( "ggplot2" ) # Instalar la biblioteca de paquetes ggplot2 ( " ggplot2" ) # Cargar el paquete ggplot2 |
Ahora, podemos usar las funciones ggplot y geom_point para dibujar un diagrama de dispersión ggplot2 en R:
ggplot ( datos, aes ( x = x, y = y ) ) + # Diagrama de dispersión en ggplot2 geom_point ( ) |
Figura 9: Diagrama de dispersión creado con el paquete ggplot2.
La Figura 9 contiene el mismo diagrama XY que ya se mostró en el Ejemplo 1. Esta vez, sin embargo, el diagrama de dispersión se visualiza en el estilo típico de ggplot2.
Ejemplo 10: Diagrama de dispersión en paquete de celosía
Otro paquete popular para el dibujo de diagramas de dispersión es el paquete Lattice . Primero, necesitamos instalar y cargar el paquete de celosía:
instalar _ paquetes ( "lattice" ) # Instalar la biblioteca de paquetes de celosía ( "lattice" ) # Cargar el paquete de celosía |
El paquete de celosía contiene el comando xyplot, que se usa de la siguiente manera:
xyplot ( y ~ x, datos ) # Diagrama de dispersión en celosía |
Figura 10: Diagrama de dispersión creado con el paquete de celosía.
Nuevamente la misma imagen que en los Ejemplos 1 y 9, pero esta vez con un diseño de celosía.
Vídeo y recursos adicionales
Echa un vistazo al siguiente vídeo de mi canal de YouTube. En el video, muestro la sintaxis de programación R de este tutorial:
El video de YouTube se agregará pronto.
Además, puede leer los tutoriales relacionados en mi sitio web. Puede encontrar otros tutoriales sobre el trazado de datos aquí.
- La función plot en R
- función de suavizado lowess() R
- Funciones gráficas de pares R y pares gg
- Rotar etiquetas de eje del gráfico base R
- Eliminar valores de eje de diagrama de dispersión en base R
- Establecer la relación de aspecto de la gráfica de dispersión
- Crear texto de eje bonito
- Agregar leyenda al diagrama de dispersión ggplot2
- Eliminar etiquetas de eje y marcas de ggplot2 Plot
- Función ablina en R
- Galería de gráficos R
- Lista de Funciones R (+ Ejemplos)
- El lenguaje de programación R
En este tutorial aprendiste a hacer un diagrama de dispersión en RStudio, es decir, el lenguaje de programación R. Si tiene preguntas o comentarios adicionales, hágamelo saber en la sección de comentarios.
Alejandro Lugón es un economista y escritor especializado en Python y R, conocido por ser el creador del blog Estadisticool. Nacido en México, Lugón se graduó de la Universidad Autónoma de México con una Licenciatura en Economía. Desde entonces ha trabajado como economista en varias empresas. Lugón también ha escrito varios libros sobre temas relacionados con la economía, el análisis de datos y la programación. Su blog Estadisticool se ha convertido en un lugar de referencia para los programadores de Python y R. Alejandro Lugón es una inspiración para aquellos que buscan aprender programación y análisis de datos. Su trabajo ha ayudado a muchas personas a entender mejor el uso de la tecnología para hacer sus trabajos.