En este artículo, discutiremos cómo hacer gráficos de densidad múltiple con coloración por variable en el lenguaje de programación R.
Para hacer gráficos de densidades múltiples con colores por variable en R con ggplot2, primero creamos un marco de datos con valores y categoría. Luego dibujamos el gráfico de densidad ggplot2 usando la función geom_desnity(). Para colorearlos según la variable, agregamos la propiedad de relleno como una categoría en la función ggplot().
Sintaxis: ggplot(dataFrame, aes(x, color, relleno)) + geom_density()
Gráficas de Densidad Múltiple con Coloreado por Variable
Obtenemos gráficos de densidad múltiple en el ggplot de dos colores correspondientes a dos niveles/valores para la segunda variable categórica. Si nuestra variable categórica tiene n niveles, entonces ggplot2 haría gráficos de densidad múltiple con n densidades/color.
R
# set seed set.seed(1234) # create dataframe df <- data.frame( category=factor(rep(c("category1", "category2"), each=500)), value=round(c(rnorm(500, mean=95, sd=5), rnorm(500, mean=105, sd=7)))) # load library ggplot2 package library(ggplot2) # Basic density plot with custom color ggplot(df, aes(x=value, color=category)) + # color property for changing color of plot # geom_density() function plots the density plot geom_density()
Producción:
Personalización de color
Para agregar color debajo del diagrama de densidad, usamos la propiedad de relleno. También podemos personalizar la transparencia de la trama con la propiedad alfa. Obtenemos gráficos de densidad múltiple en el ggplot rellenos con dos colores correspondientes a dos niveles/valores para la segunda variable categórica. Si nuestra variable categórica tiene n niveles, entonces ggplot2 haría gráficos de densidad múltiple con n densidades/color. El valor alfa de 0,3 proporciona un 30 % de transparencia al relleno del gráfico.
R
set.seed(1234) df < - data.frame( category=factor(rep(c("category1", "category2"), each=500)), value=round(c(rnorm(500, mean=95, sd=5), rnorm(500, mean=105, sd=7))) ) # load library library(ggplot2) # Basic density plot with custom color # color property to determine the color of plot # fill property to determine the color beneath plot ggplot(df, aes(x=value, color=category, fill=category)) + geom_density(alpha=0.3)
Producción:
Personalización de la escala logarítmica
Cuando los datos del eje x o y son muy grandes, podemos dibujar gráficos con una escala logarítmica. En ggplot2, podemos transformar los valores del eje x a escala logarítmica usando la función scale_x_log10().
Sintaxis: plot+ scale_x_log10()
Ahora nuestro gráfico de densidad está dibujado en escala logarítmica. Esto se vuelve más efectivo cuando nuestro conjunto de datos está sesgado. Ayuda a corregir la asimetría de la trama.
R
# set seed set.seed(1234) # create dataframe df < - data.frame( category=factor(rep(c("category1", "category2"), each=5000)), value=round(c(rnorm(5000, mean=90005, sd=50000), rnorm(5000, mean=70005, sd=70000)))) # load library ggplot2 library(ggplot2) # Basic density plot # color property is used to determine the color of plot ggplot(df, aes(x=value, color=category)) + geom_density()+ # geom_density() creates density plot scale_x_log10() # converts x-axis values in log scale
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