Dibuja ggplot2 Leyenda sin Trama en R

Una leyenda en el gráfico describe cada parte del gráfico individualmente y se usa para mostrar datos estadísticos en forma gráfica. En este artículo, veremos cómo dibujar solo la leyenda sin trama en ggplot2. 

Primero, veamos cómo dibujar un gráfico con una leyenda para que la diferencia sea evidente. Para eso, cargue el paquete ggplot2 usando la función library() y cree un DataFrame. Para crear un diagrama R, usamos la función ggplot() y para obtener un diagrama de dispersión agregamos la función geom_point() a la función ggplot(). 

Ejemplo:

R

# Load Package
library("ggplot2")
  
# Create a DataFrame 
data <- data.frame(
  Xdata = rnorm(10),                        
  Ydata = rnorm(10),
  LegendData = c("ld-01", "ld-02", "ld-03",
                 "ld-04", "ld-05", "ld-06",
                 "ld-07", "ld-08", "ld-09", 
                 "ld-10"))
  
# Create a Scatter Plot and assign it 
# to gplot data object
gplot <- ggplot(data, aes(
  Xdata, Ydata, color = LegendData)) +   
  geom_point(size = 7)
gplot

Producción:

Scatter Plot with legend

Gráfico de dispersión con leyenda

Paquetes utilizados:

Ahora, para dibujar solo la leyenda del diagrama sin el diagrama, debemos cargar tres paquetes llamados grid , gridExtra y cowplot .

  • El paquete grid se utiliza para producir una salida gráfica directamente

Sintaxis:

install.packages(“grid”) #Para instalar el paquete grid

biblioteca(“grid”) #Para Cargar paquete grid

  • gridExtra es una extensión del paquete grid, admite la creación y edición de objetos gráficos pero con funciones de mayor nivel que grid.

Sintaxis:

install.packages(“gridExtra”) #Para instalar el paquete gridExtra

biblioteca («gridExtra») #Para cargar el paquete gridExtra

  • El paquete cowplot se utiliza para mejorar la presentación de la figura mediante la fijación de sus componentes principales.

Sintaxis:

install.packages(“cowplot”) #Para instalar el paquete cowplot

biblioteca(“cowplot”) #Para Cargar paquete cowplot

Funciones utilizadas:

Para dibujar solo la leyenda, usamos tres funciones, que son de los paquetes anteriores.

  • La función get_legend() se usa para mantener la leyenda en un gráfico.

Sintaxis: get_legend(ggplot)

Parámetro: un ggplot, desde el cual recuperar la leyenda

Regreso: Leyenda de la trama

  • grid.newpage() mueve la cuadrícula a otro dispositivo eliminándola del dispositivo anterior.

Sintaxis: cuadrícula.nuevapágina()

Volver: borra la ventana de trazado actual y crea una nueva ventana de trazado

  • grid.draw() produce una salida gráfica a partir de un objeto gráfico

Sintaxis: grid.draw (leyenda)   

Regresar: dibujar la leyenda en la nueva ventana de trazado

Por lo tanto, para dibujar un gráfico solo con la leyenda, primero, se dibuja una leyenda y se mantiene en el gráfico usando get_legend(), luego se borra el gráfico usando grid.newpage() y luego la leyenda se dibuja en una nueva ventana de gráfico. usando grid.draw().

Ejemplo:

R

# Load Packages
library("ggplot2")
library("grid")
library("gridExtra")
library("cowplot")
  
# Create a DataFrame
data <- data.frame(
  Xdata = rnorm(10), Ydata = rnorm(10),
  LegendData = c("ld-01", "ld-02", "ld-03",
                 "ld-04", "ld-05", "ld-06",
                 "ld-07", "ld-08", "ld-09", 
                 "ld-10"))
  
# Create a Scatter Plot
gplot <- ggplot(data, aes(Xdata, Ydata, color = LegendData)) +   
  geom_point(size = 7)
  
# Draw Only Legend without plot
# Grab legend from gplot
legend <- get_legend(gplot)                    
  
# Create new plot window
grid.newpage()                              
  
# Draw Only legend 
grid.draw(legend) 

Producción:

Only Legend Without Plot

Solo Leyenda Sin Trama

Publicación traducida automáticamente

Artículo escrito por erkrutikpatel 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 *