varias tutorial superponer studio graficos graficas ggplot espaƱol dispersion diagrama r ggplot2

tutorial - superponer graficas en r ggplot



Crea una matriz de diagramas de dispersiĆ³n(pares() equivalentes) en ggplot2 (3)

Es posible que desee probar plotmatrix:

library(ggplot2) data(mtcars) plotmatrix(mtcars[,1:3])

para mí mpg (primera columna en mtcars) no debería ser un factor. No lo he comprobado, pero no hay ninguna razón por la que debería ser uno. Sin embargo, recibo un diagrama de dispersión :)

Nota: Para futuras referencias, la función plotmatrix() ha sido reemplazada por la función ggpairs() del paquete GGally , ya que @ naught101 sugiere en otra respuesta a continuación esta pregunta.

¿Es posible trazar una matriz de gráficos de dispersión con ggplot2 , usando las características agradables de ggplot como mapear factores adicionales para el color, la forma, etc. y agregar más suave?

Estoy pensando en algo similar a los pairs funciones base .


Si uno quiere obtener un objeto ggplot (no ggmatrix como en el caso de ggpairs() ), la solución es fundir los datos dos veces, luego ggplot con facetas. facet_wrap sería mejor que facet_grid para limitar el área graficada, dado que las scales = ''free'' se proporciona el parámetro scales = ''free'' .

require(ggplot2) require(dplyr) require(tidyr) gatherpairs <- function(data, ..., xkey = ''.xkey'', xvalue = ''.xvalue'', ykey = ''.ykey'', yvalue = ''.yvalue'', na.rm = FALSE, convert = FALSE, factor_key = FALSE) { vars <- quos(...) xkey <- enquo(xkey) xvalue <- enquo(xvalue) ykey <- enquo(ykey) yvalue <- enquo(yvalue) data %>% { cbind(gather(., key = !!xkey, value = !!xvalue, !!!vars, na.rm = na.rm, convert = convert, factor_key = factor_key), select(., !!!vars)) } %>% gather(., key = !!ykey, value = !!yvalue, !!!vars, na.rm = na.rm, convert = convert, factor_key = factor_key) } iris %>% gatherpairs(Sepal.Length, Sepal.Width, Petal.Length, Petal.Width) %>% { ggplot(., aes(x = .xvalue, y = .yvalue, color = Species)) + geom_point() + geom_smooth(method = ''lm'') + facet_wrap(.xkey ~ .ykey, ncol = length(unique(.$.ykey)), scales = ''free'', labeller = label_both) + scale_color_brewer(type = ''qual'') }


Sigo queriendo hacer esto, pero plotmatrix es una mierda. Hadley recommends usar el paquete GGally en su lugar. Tiene una función, ggpairs que es una parcela de pares muy mejorada (le permite usar variables no continuas en sus marcos de datos). Traza diferentes parcelas en cada cuadrado, dependiendo de los tipos de variables:

library(GGally) ggpairs(iris, aes(colour = Species, alpha = 0.4))