En este artículo, veremos cómo agregar leyendas para diagramas de líneas múltiples en el lenguaje de programación R usando ggplot2. Primero, debe instalar el paquete ggplot2 si no se instaló previamente en R Studio.
Las funciones utilizadas para crear los diagramas de líneas son:
- geom_line( ) : Para trazar la línea y asignar su tamaño, forma, color, etc.
Sintaxis:
geom_line(mapping=NULL, data=NULL, stat=”identidad”, position=”identidad”,…)
- geom_point( ) : Se usa para agregar puntos al final de las líneas. Se utiliza para asignar la forma, tamaño, color de los puntos.
Sintaxis:
geom_point(mapping=NULL, data=NULL, stat=”identidad”, position=”identidad”,…)
Conjunto de datos en uso:
Trazamos primero el gráfico inicial sin ninguna modificación para que la diferencia sea evidente.
Ejemplo:
R
# Inserting data vacc <- data.frame(catgry=rep(c("Covishield", "Covaxin"), each=2), dose=rep(c("D1", "D2"),2), slots=c(33, 45, 66, 50)) library(ggplot2) # Plotting basic lines with multiple groups plt <- ggplot(data=vacc, aes(x=dose, y=slots, group=catgry))+ geom_line()+ geom_point(color="red", size=3)+ labs(x="Doses",y="Free Slots")+ ggtitle("Vaccine Details") plt
Producción:
Los gráficos de líneas se trazan con éxito. No podemos interpretar las líneas directamente, es decir, qué línea pertenece a Covaxin y lo mismo para Covishield con solo ver el gráfico anterior. Por lo tanto, necesitamos leyendas que ayuden a segregar estas líneas sobre la base de grupos.
Adición de leyendas
No hay una forma directa en R de agregar leyendas en el caso de varias líneas como en Excel y otros lenguajes de secuencias de comandos. Entonces, para agregar leyendas, debemos distribuir las líneas en varios grupos según el color . La idea clave es diferenciar las líneas asignando diferentes colores a cada línea y agruparlas por separado. Ahora, las líneas se clasificarán en diferentes grupos y las leyendas se agregarán automáticamente en la trama.
Método 1: agrupación predeterminada
En esto, usamos directamente el atributo de color dentro de geom_line() con el atributo que se usará para diferenciar.
Sintaxis:
geom_line(aes(color=grupo_var))
group_var es el nombre de la variable en el marco de datos que se utiliza para segregar las líneas.
Ejemplo:
R
# Inserting data vacc <- data.frame(catgry=rep(c("Covishield", "Covaxin"), each=2), dose=rep(c("D1", "D2"),2), slots=c(33, 45, 66, 50)) library(ggplot2) # Plotting basic line with multiple groups plt <- ggplot(data=vacc, aes(x=dose, y=slots, group=catgry))+ geom_line()+ geom_point(color="red", size=3)+ labs(x="Doses",y="Free Slots")+ ggtitle("Vaccine Details") plt # Adding legends plt+geom_line(aes(color=catgry))
Producción:
Método 2: agrupación manual
R nos proporciona la función scale_color_manual() que ayuda a asignar el color manualmente. Podemos asignar el nombre del color o el código de color para las líneas manualmente usando esta función.
Sintaxis:
scale_color_manual(..,valores,estética=”color”)
Parámetro:
- color: código de color que se escribe en forma de “#RRBBGG” o simplemente nombre del color.
- valores: Formar un vector para asignar colores a varias líneas.
Es similar al método anterior, pero aquí los usuarios tienen la flexibilidad de asignar color a las líneas en función de sus elecciones.
Ejemplo:
R
# Inserting data vacc <- data.frame(catgry=rep(c("Covishield", "Covaxin"), each=2), dose=rep(c("D1", "D2"),2), slots=c(33, 45, 66, 50)) library(ggplot2) # Plotting basic line with multiple groups plt <- ggplot(data=vacc, aes(x=dose, y=slots, group=catgry))+ geom_line()+ geom_point(color="black", size=3)+ labs(x="Doses",y="Free Slots")+ ggtitle("Vaccine Details") plt # Adding legends manually plt+geom_line(aes(color=catgry))+ scale_color_manual(values=c("#006000", "blue"))
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