¿Cómo dibujar una leyenda fuera de un gráfico en R?

En este artículo, discutiremos cómo dibujar una leyenda fuera de un gráfico en el lenguaje de programación R.

Primero creamos un gráfico básico sin leyenda usando la función plot() y agregamos un margen alrededor para la leyenda usando la función par() del lenguaje R. Crearemos el margen requerido y haremos que el parámetro xpd sea VERDADERO. Esto hará que nuestro trazado se recorte a la región de la figura.

Sintaxis:

par( mar, xpd)

dónde,

  • mar: determina el vector que contiene margin.
  • xpd: Es un booleano. Si es FALSO, todos los trazados se recortan en la región de trazado; si es VERDADERO, todos los trazados se recortan en la región de la figura

Luego usamos la función legend() para agregar una capa de leyenda encima. Para colocar la leyenda en la posición deseada en el gráfico, usamos el parámetro de inserción de la función de leyenda.

Sintaxis:

legend(position, inset, title, legend, pch, col )

dónde,

  • posición: determina la posición de la leyenda.
  • recuadro: determina el cambio de posición.
  • title: determina el título de la leyenda.
  • pch: determina los símbolos utilizados para representar el punto de datos.
  • col: determina el color de los puntos de datos.

Ejemplo 1:

Aquí hay un gráfico básico en lenguaje R con la leyenda en la esquina superior derecha del gráfico.

R

# create sample data frame
sample_data <- data.frame(x = c(rnorm(50), rnorm(50, 5)),      
                   y = c(rnorm(50), rnorm(50, 5)),
                   group = c(rep(1, 50), rep(2, 50))) 
  
# create margin around plot
par(mar = c(3, 3, 3, 8), xpd = TRUE)
  
# Draw scatter plot
plot(sample_data$x, sample_data$y,                                   
     pch = sample_data$group+10,
     col = sample_data$group)
  
# Draw legend
legend("topright", inset = c(-0.3, 0.1),                   
       legend = c("Group 1","Group 2"),
       pch = c(11,12), col = 1:2)

Producción:

Ejemplo 2:

Aquí, hay un gráfico básico en lenguaje R con la leyenda en la parte inferior del gráfico.

R

# create sample data frame
sample_data <- data.frame(x = c(rnorm(50), rnorm(50, 5), rnorm(50, 10)),      
                   y = c(rnorm(50), rnorm(50, 5), rnorm(50, 10)),
                   group = c(rep(1, 50), rep(2, 50), rep(3, 50))) 
  
# create margin around plot
par(mar = c(10, 3, 3, 3), xpd = TRUE)
  
# Draw scatter plot
plot(sample_data$x, sample_data$y,                                   
     pch = sample_data$group+10,
     col = sample_data$group)
  
# Draw legend
legend("topright", inset = c(0.4, 1.2),                   
       legend = c("Group 1","Group 2","Group 3"),
       pch = c(11,12,13), col = 1:3)

Producción:

Publicación traducida automáticamente

Artículo escrito por mishrapriyank17 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *