En este artículo, discutiremos cómo dibujar gráficos de barras uno al lado del otro en el lenguaje de programación R.
Método 1: Usar la función par()
Para dibujar parcelas una al lado de la otra se usa la función par().
Sintaxis:
par(mfrow, mar, mgp, las)
Parámetros:
- mfrow- Un vector numérico de longitud 2, que establece las filas y columnas en las que se debe dividir el marco.
- mar: un vector numérico de longitud 4, que establece los tamaños de los márgenes en el siguiente orden: inferior, izquierdo, superior y derecho.
- mgp: un vector numérico de longitud 3, que establece las ubicaciones de las etiquetas de los ejes en relación con el borde de la ventana de trazado interior.
- las: un valor numérico que indica la orientación de las etiquetas de marca de verificación y cualquier otro texto agregado a una gráfica después de su inicialización.
Las parcelas se dibujan con normalidad e independientemente de las demás. Para dibujarlos uno al lado del otro, pase el número de filas y columnas como si se estuviera definiendo una cuadrícula.
Ejemplo: Trazado de gráficos de barras uno al lado del otro usando R básico
R
# Define data-set columns x1 <- c(31,13,25,31,16) x2 <- c(12,23,43,12,22,45,32) label1 <- c('geek','geek-i-knack','technical-scripter', 'content-writer','problem-setter') label2 <- c('sun','mon','tue','wed','thur','fri','sat') # set the plotting area into a 1*2 array par(mfrow=c(1,2)) # Draw the two bar chart using above datasets barplot(x1, names.arg = label1,col=rainbow(length(x1))) barplot(x2, names.arg = label2,col ="green")
Producción:
Método 2: Usando ggplot2
En este grid.arrange() se utiliza para organizar las parcelas en un marco.
Sintaxis:
grid.arrange(plot, nrow, ncol)
Parámetro:
- plot- ggplot2 parcela que queremos organizar
- nrow- Número de filas
- ncol- Número de columnas
Aquí, las parcelas se dibujan normalmente e independientemente. Luego, se llama a la función con estos gráficos y el número de filas y columnas de manera que se define una cuadrícula.
Ejemplo: Trazado de múltiples parcelas una al lado de la otra usando ggplot.
R
# Define data-set columns x1 <- c(31,13,25,31,16) x2 <- c(12,23,43,12,22,45,32) x3 <- c(234,123,210) label1 <- c('geek','geek-i-knack','technical-scripter', 'content-writer','problem-setter') label2 <- c('sun','mon','tue','wed','thur','fri','sat') label3 <- c('solved','attempted','unsolved') # Create data frame using above # data column data1 <- data.frame(x1,label1) data2 <- data.frame(x2,label2) data3 <- data.frame(x3,label3) # set the plotting area into a 1*3 array par(mfrow=c(1,3)) # import library ggplot2 and gridExtra library(ggplot2) library(gridExtra) # Draw the three bar chart using above datasets plot1<-ggplot(data1, aes(x=label1, y=x1)) + geom_bar(stat="identity", width=1, color="white", fill=rgb(0.1,0.4,0.5,0.7)) plot2<-ggplot(data2, aes(x=label2, y=x2)) + geom_bar(stat="identity", width=1, color="white", fill=rgb(0.1,0.8,0.1,0.7)) plot3<-ggplot(data3, aes(x=label3, y=x3)) + geom_bar(stat="identity", width=1, color="white", fill=rgb(0.8,0.4,0.1,0.7)) # Use grid.arrange to put plots in columns grid.arrange(plot1, plot2, plot3, ncol=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