En este artículo, vamos a ver cómo modificar las etiquetas de los ejes, la leyenda y las etiquetas de los gráficos utilizando el gráfico de barras ggplot2 en el lenguaje de programación R.
Para crear un gráfico de barras simple, usaremos la función geom_bar().
Sintaxis: geom_bar(estadística, relleno, color, ancho)
Parámetros:
stat: Configure el parámetro stat para identificar el modo.
relleno: representa el color dentro de las barras.
color : Representa el color de los contornos de las barras.
ancho: Representa el ancho de las barras.
Conjunto de datos en uso:
Primero visualicemos el gráfico tal como es para que los cambios sean evidentes.
Ejemplo:
R
# Inserting data ODI <- data.frame(match=c("M-1","M-2","M-3","M-4"), runs=c(67,37,74,10)) head(ODI) library(ggplot2) # Default axis labels in ggplot2 bar plot perf <-ggplot(data=ODI, aes(x=match, y=runs,fill=match))+ geom_bar(stat="identity") perf
Producción:
Agregar etiquetas de eje y título principal en la trama
De forma predeterminada, R utilizará las variables proporcionadas en el marco de datos como etiquetas del eje. Podemos modificarlos y cambiar su apariencia fácilmente. Las funciones que se utilizan para cambiar las etiquetas de los ejes son:
- xlab( ) : Para el eje horizontal.
- ylab( ) : Para el eje vertical.
- labs( ): Para ambos ejes simultáneamente.
- element_text() : Los argumentos de esta función son :
Sintaxis:
element_text(familia, cara, color, tamaño, hjust, vjust, ángulo, margen)
- element_blank( ): Para convertir las etiquetas en NULL y eliminarlas del gráfico.
El argumento hjust (Ajuste horizontal) o vjust (Ajuste vertical) se utiliza para mover las etiquetas de los ejes. Toman números en el rango [0,1] donde:
hjust = 0 // Representa la esquina más a la izquierda del eje
hjust = 0.5 // Representa la mitad del eje
hjust = 1 // Representa la esquina más a la derecha del eje
Las palabras clave utilizadas son:
- título: para agregar una etiqueta de trama.
- subtítulo : Para agregar subtítulos en la trama.
- caption : Para agregar un título en la trama.
- axis.title.x : Para el eje horizontal.
- axis.title.y : Para eje vertical.
Ejemplo:
R
library(ggplot2) # Inserting data ODI <- data.frame(match=c("M-1","M-2","M-3","M-4"), runs=c(67,37,74,10)) # Default axis labels in ggplot2 # bar plot perf <-ggplot(data=ODI, aes(x=match, y=runs,fill=match))+ geom_bar(stat="identity") perf # Manually adding axis labels and # Plot Label ggp<-perf+labs(x="Matches",y="Runs Scored", title="Runs scored by Virat Kohli in ODI matches") ggp
Producción:
También se puede incluir un subtítulo con el título principal usando la función labs() y pasando el argumento de subtítulo con el subtítulo requerido.
Ejemplo:
R
library(ggplot2) # Inserting data ODI <- data.frame(match=c("M-1","M-2","M-3","M-4"), runs=c(67,37,74,10)) # Default axis labels in ggplot2 bar plot perf <-ggplot(data=ODI, aes(x=match, y=runs,fill=match))+ geom_bar(stat="identity") perf # Manually adding axis labels and Plot Label ggp<-perf+labs(x="Matches",y="Runs Scored", title="Runs scored by Virat Kohli in ODI matches") ggp # Subtitle and Caption ggp+labs(subtitle="Performance",caption="GeeksforGeeks Trophy")
Producción:
Para mover las etiquetas de los ejes, solo se establece el argumento de acuerdo con el requisito.
Ejemplo:
R
library(ggplot2) # Inserting data ODI <- data.frame(match=c("M-1","M-2","M-3","M-4"), runs=c(67,37,74,10)) # Default axis labels in ggplot2 bar plot perf <-ggplot(data=ODI, aes(x=match, y=runs,fill=match))+ geom_bar(stat="identity") perf # Manually adding axis labels and Plot Label ggp<-perf+labs(x="Matches",y="Runs Scored", title="Runs scored by Virat Kohli in ODI matches") ggp # Moving axis label to left ggp + theme( axis.title.x = element_text(hjust=0), axis.title.y = element_text(hjust=0) ) # Moving axis label in middle ggp + theme( axis.title.x = element_text(hjust=0.5), axis.title.y = element_text(hjust=0.5) ) # Moving axis label to right ggp + theme( axis.title.x = element_text(hjust=1), axis.title.y = element_text(hjust=1) )
Producción:
Formateo de la apariencia de las etiquetas de los ejes y el título principal de la trama
Las etiquetas de los ejes y los títulos principales se pueden cambiar para reflejar la apariencia deseada. Para esta función element_text() se pasa con los atributos requeridos.
Ejemplo:
R
library(ggplot2) # Inserting data ODI <- data.frame(match=c("M-1","M-2","M-3","M-4"), runs=c(67,37,74,10)) # Default axis labels in ggplot2 bar plot perf <-ggplot(data=ODI, aes(x=match, y=runs,fill=match))+ geom_bar(stat="identity") perf # Manually adding axis labels and Plot Label ggp<-perf+labs(x="Matches",y="Runs Scored", title="Runs scored by Virat Kohli in ODI matches") # Plot title, axis labels format ggp + theme(plot.title = element_text( colour="#006000", size=14,face="bold"), axis.title.x = element_text( colour="Purple",size=10,face="bold.italic"), axis.title.y = element_text( colour="DarkBlue",size=10,face="bold.italic") )
Producción:
Quitar las etiquetas de los ejes y trazar el título
Para esta función theme() se llama con referencia a qué parte de la trama debe modificarse. A estas referencias, pase element_blank() sin ningún argumento.
Ejemplo:
R
library(ggplot2) # Inserting data ODI <- data.frame(match=c("M-1","M-2","M-3","M-4"), runs=c(67,37,74,10)) # Default axis labels in ggplot2 bar plot perf <-ggplot(data=ODI, aes(x=match, y=runs,fill=match))+ geom_bar(stat="identity") perf # Manually adding axis labels and Plot Label ggp<-perf+labs(x="Matches",y="Runs Scored", title="Runs scored by Virat Kohli in ODI matches") # Remove chart title and axis label ggp + theme(plot.title = element_blank(), axis.title.x = element_blank(), axis.title.y = element_blank() )
Producción:
Cambiar la posición de las leyendas
Para cambiar la posición de la leyenda, se llama a la función theme() con legend.position como argumento y a este argumento se le pasa una posición requerida.
Sintaxis:
tema (leyenda.posición = «Pos»)
Parámetro:
Pos: Izquierda, Derecha, Arriba, Abajo.
Ejemplo:
R
library(ggplot2) # Inserting data ODI <- data.frame(match=c("M-1","M-2","M-3","M-4"), runs=c(67,37,74,10)) # Default axis labels in ggplot2 bar plot perf <-ggplot(data=ODI, aes(x=match, y=runs,fill=match))+ geom_bar(stat="identity") perf # Manually adding axis labels and Plot Label ggp<-perf+labs(x="Matches",y="Runs Scored", title="Runs scored by Virat Kohli in ODI matches") # Move legend to top position of the plot ggp + theme(legend.position="top")
Producción:
Ejemplo:
R
library(ggplot2) # Inserting data ODI <- data.frame(match=c("M-1","M-2","M-3","M-4"), runs=c(67,37,74,10)) # Default axis labels in ggplot2 bar plot perf <-ggplot(data=ODI, aes(x=match, y=runs,fill=match))+ geom_bar(stat="identity") perf # Manually adding axis labels and Plot Label ggp<-perf+labs(x="Matches",y="Runs Scored", title="Runs scored by Virat Kohli in ODI matches") # Move legend to bottom position of the plot ggp + theme(legend.position="bottom")
Producción:
Publicación traducida automáticamente
Artículo escrito por rishabhchakrabortygfg y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA