Dibujar cuadrícula desequilibrada de ggplot2 Parcelas en R

En este artículo, vamos a ver cómo dibujar una cuadrícula desequilibrada de gráficos ggplot2 en el lenguaje de programación R. Usamos principalmente las funciones grid.arrange() y OrganizeGrob() . Lo que sigue es la breve información de estas dos funciones. 

  • grid.arrange(): calculará un número diferente de filas y columnas para organizar las parcelas y para formar diseños anidados de parcelas

Sintaxis: grid.arrange(plot, nrow, ncol)

Parámetro:

  • plot: ggplot2 parcela que queremos organizar
  • nrow: Número de filas
  • ncol: Número de columnas

Devolución: Arreglo de parcela

  • arreglaGrob(): Esta función toma muchos parámetros, por ejemplo. layout_matrix, as.table, respect, top, bottom, left, right y muchos más.

Sintaxis: arreglarGrob(…, alturas)

Parámetro:

  • …: parcelas ggplot2 que queremos organizar en la misma página
  • heights : Alturas de esas parcelas

Regreso: organizar varias parcelas en la misma página con una cuadrícula diferente

Primero, debemos cargar algunos paquetes R que se usarán más adelante en este ejemplo. Usaremos el paquete ggplot2 para dibujar la trama y gridExtra para dibujar varias cuadrículas en la trama.

install.packages("ggplot2")
library("ggplot2")
install.packages("gridExtra")
library("gridExtra")

Para los datos del diagrama de dispersión, elegimos unos 50 valores aleatorios para los ejes X e Y , ambos usando la función rnorm() que puede generar valores normales aleatorios. Luego cree un DataFrame y asígnelo al objeto de datos ‘datos’ .

data <- data.frame(x = rnorm(50), y = rnorm(50))

Ahora creamos un diagrama de dispersión usando la función ggplot() y lo hacemos disperso usando la función geom_point() .

A continuación se muestra la implementación:

R

# Load Packages
library("ggplot2")
library("gridExtra")
 
# Create data for Plotting
data <- data.frame(x = rnorm(50), y = rnorm(50))
 
# Create Simple Scatter Plot
gplot <- ggplot(data, aes(x, y)) + geom_point(col = "green")
gplot

Producción:

Simple Scatter Plot

Diagrama de dispersión simple

Cambiar cuadrícula vertical de parcela

Aquí estamos cambiando la cuadrícula vertical de la trama. Usamos la función grid.arrange() del paquete gridExtra. Dentro del paquete grid.arrange(), asignamos gplot (Nuestro gráfico de dispersión) como primer parámetro y ncol como segundo parámetro. ncol simplemente divide el área de la parcela vertical en el valor que le asignamos a ncol. Aquí cambiamos la cuadrícula vertical de la trama a la mitad del espacio de la trama usando «ncol = 2».

Código:

R

# Load Packages
library("ggplot2")
library("gridExtra")
 
# Create Data for plotting
data <- data.frame(x = rnorm(50), y = rnorm(50))
 
# Create ggplot2 Scatter Plot
gplot <- ggplot(data, aes(x, y)) + geom_point(col = "green")
 
# Change the plot grid to half of the plot space.
grid.arrange(gplot, ncol = 2)

Producción:

Scatter Plot with half verticle grid

Gráfico de dispersión con media cuadrícula vertical

Cambiar cuadrícula horizontal de parcela

Para cambiar la cuadrícula horizontal de la trama, simplemente reemplazamos ncol por el parámetro nrow de la función grid.arrange(). El parámetro nrow toma el valor en el que queremos dividir la parcela horizontalmente. Aquí cambiamos la cuadrícula horizontal de la trama a la mitad del espacio de la trama usando «nrow = 2».

Código:

R

# Load Packages
library("ggplot2")
library("gridExtra")
 
# Create Data for plotting
data <- data.frame(x = rnorm(50), y = rnorm(50))
 
# Create ggplot2 Scatter Plot
gplot <- ggplot(data, aes(x, y)) + geom_point(col = "green")
 
# Change the plot Horizontal grid to half of the plot space.
grid.arrange(gplot, nrow = 2)

Producción:

Scatter Plot with half horizontal grid

Gráfico de dispersión con cuadrícula semihorizontal

Dibuje varias parcelas de diferentes tamaños de cuadrícula en el mismo espacio de parcela

Para dibujar múltiples parcelas de diferentes tamaños, usamosarrangeGrob() como el segundo parámetro de la función grid.arrange() que tomará la altura y el ancho de cada gráfico como argumento. Primero, tomará gplot como argumento para cada gráfico que queramos crear, y luego también especifica las alturas de cada gráfico usando el parámetro  heights .

Código:

R

# Load Packages
library("ggplot2")
library("gridExtra")
 
# Create Data for plotting
data <- data.frame(x = rnorm(50), y = rnorm(50))
 
# Create ggplot2 Scatter Plot
gplot <- ggplot(data, aes(x, y)) +              
  geom_point(col = "green")
 
# Create Multiple Plots with different size of grids.
grid.arrange(gplot,
             arrangeGrob(gplot, gplot,
                         heights = c(0.4, 0.6)),
             ncol = 2)

Producción:

Multiple Plots of different size of grids

Múltiples parcelas de diferentes tamaños de cuadrículas.

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 *