varias usar studio poligono pairs lineas hacer graficas graficar ejemplos diagramas diagrama curvas como barras barra r graphics split dataframe boxplot

usar - poligono en r



Cómo crear un diagrama de caja usando múltiples columnas y el argumento "dividir" (1)

Necesito crear un diagrama de caja de un data.frame con tres columnas numéricas , y usar el argumento split para separar los cuadros por paint . Tengo un gran data.frame, pero lo que necesito es en el siguiente ejemplo:

paint<-c("blue", "black", "red", "blue", "black", "red", "blue", "black", "red") car1<-c(100, 138, 123, 143, 112, 144, 343, 112, 334) car2<-c(111, 238, 323, 541, 328, 363, 411, 238, 313) car3<-c(432, 123, 322, 342, 323, 522, 334, 311, 452) data<-data.frame(paint, car1, car2, car3) >data paint car1 car2 car3 1 blue 100 111 432 2 black 138 238 123 3 red 123 323 322 4 blue 143 541 342 5 black 112 328 323 6 red 144 363 522 7 blue 343 411 334 8 black 112 238 311 9 red 334 313 452

Cuando utilicé solo una columna, funciona la siguiente función:

diagrama de caja (división [datos [, 2], datos [, 1]))

Pero cuando intento crear un diagrama de caja con tres columnas, la función no funciona:

diagrama de caja (división [datos [, 2: 4], datos [, 1]))

Gracias por la ayuda y lo siento por un inglés pobre.


Intenta primero poner tus datos en formato largo y luego graficar:

temp = reshape(data, direction="long", varying=2:4, sep="") boxplot(split(temp[,3], temp[,1])) # boxplot(car ~ paint, data=temp) ### Formula notation, easier to read

O bien, use lattice :

library(lattice) bwplot(car1 + car2 + car3 ~ paint, data=data)

boxplot embargo, no estoy seguro de por qué esa notación no funciona con el boxplot de boxplot de boxplot

Actualizar

En caso de que malinterprete su pregunta original (después de leer el comentario de Roman), aquí hay una opción (otra vez usando lattice ) que pone diagramas de car2 para car2 , car3 y car3 separado, pero uno al lado del otro. Esto utiliza la temp datos de forma larga creada en el primer ejemplo:

bwplot(car ~ paint | paste0("Car ", time), data = temp)