Los gráficos circulares ayudan a mostrar proporciones y porcentajes entre categorías al dividir un círculo en segmentos proporcionales. Cada longitud de arco representa una proporción de cada categoría, mientras que el círculo completo representa el 100%.
Los gráficos circulares son ideales para dar al lector una idea rápida de la distribución proporcional de los datos. Sin embargo tiene varias desventajas:
No pueden mostrar muchos valores, porque a medida que aumenta el número de valores, el tamaño de cada segmento es más pequeño y dificil de interpretar.
Ocupan más espacio que sus alternativas y la interpretación del gráfico no siempre es fácil de realizar, como el gráfico de barra.
No son buenos para realizar comparaciones entre grupos de gráficos circulares.
#cargar librerias ggplot
#-----------------------------------------
library(ggplot2)
# leer datos de SchoolsMiamiDade
SchoolsMiamiDade<- read.csv("SchoolsMiamiDade.csv")
SchoolName : Nombre de la Escuela
BoardDistrict : Núemero de Dsitrito donde esta la escuela
SchoolGrade : Grado al que se le aplico la prueba
Reading2012 : puntaje de 1 a 100 en Lectura 2012
Reading2013: puntaje de 1 a 100 en Lectura 2013
ReadingDifference: diferencia entre 2013 y 2012 en lectura
Math2012: puntaje de 1 a 100 en Matemática 2012
Math2013: puntaje de 1 a 100 en Matemática 2013
MathDifference: diferencia entre 2013 y 2012 en matemática
El uso del Gráfico de Pastel puede ser un problema ya que las personas somos bastante malos para leer ángulos. El comentario no está relacionado con noutilizarlo, sino que en GGPLOT realizar un gráfico de pastel, no es tan fácil porque no hay una geometria de gráfico de pastel.
Los pasos para hacer un gráfico de pastel son los siguientes:
tabla <- table(SchoolsMiamiDade$BoardDistrict)
tablaDistrito <- data.frame(tabla)
head(tablaDistrito,5)
# se generan dos variables una cuantitativa y una cuantitativa
x="" genera una sola columna
y = Freq valores cuantitativo de tablaDistrito
fill = Var1 valores cuantitativos de tablaDistrito
ggplot(tablaDistrito, aes(x="", y= Freq, fill=Var1)) +
geom_bar(stat = "identity")
ggplot(tablaDistrito, aes(x="", y= Freq, fill=Var1)) +
geom_bar(stat = "identity")+
coord_polar("y", start=0)
Con la funcion “theme_void()” eliminamos los datos de coordenadas polares (opcional).
ggplot(tablaDistrito, aes(x="", y= Freq, fill=Var1)) +
geom_bar(stat = "identity")+
coord_polar("y", start=0) +
geom_text(aes(label = Freq),position = position_stack(vjust = 0.5)) +
labs(title = "Numero de escuelas por distrito - USA 2012", fill = NULL, x = NULL, y= NULL) +
theme_void()
Con la funcion “theme_void()” eliminamos los datos de coordenadas polares (opcional).
#calcular porcentajes
porcentaje <- round((tablaDistrito$Freq /460) * 100,1)
ggplot(tablaDistrito, aes(x="", y= Freq, fill=Var1)) +
geom_bar(stat = "identity")+
coord_polar("y", start=0) +
geom_text(aes(label = paste0(porcentaje, "%")),position = position_stack(vjust = 0.5)) +
labs(title = "Numero de escuelas por distrito - USA 2012", fill = NULL, x = NULL, y= NULL) +
theme_void()
Se utilizan los mismos datos con la variable BoardDistrict. En la comparación de los graficos deseamos responder la siguiente pregunta.
¿Cuál es el Distrito con la mayor cantidad de escuelas?
#grafico de pastel
ggplot(tablaDistrito, aes(x="", y= Freq, fill=Var1)) +
geom_bar(stat = "identity")+
coord_polar("y", start=0) +
theme_void()
#grafico de barras
ggplot(SchoolsMiamiDade, aes(BoardDistrict))+
geom_bar(aes(fill=BoardDistrict))
Con el gráfico de pastel es muy dificil responder la pregunta, sin tener los datos
Existe una forma más fácil de crear un gráfico de pastel, utilizando la función pie().
#utilizamos los datos de tabla
#creamos un vetor para las leyendas tipo caracter
leyenda <- as.character(tablaDistrito$Var1)
#vcreacion del grafico
pie(tablaDistrito$Freq, tablaDistrito$Freq, main="Numero de personas por Clase el Titanic", col = rainbow(length(tabla)))
#crear leyenda
legend("topright", leyenda, cex = 0.8,
fill = rainbow(length(leyenda)))
Crear un gráfico de pastel con la variable SchoolGrade sin mostrar los datos en el gráfico pero si el título y la leyenda.
¿Qué interpreta?
Cree un gráfico de barra con los datos de la variable SchoolGrade. ¿Qué interpreta?
¿Es la misma interpretación del gráfico de pastel, porqué?