El paquete Lattice es una implementación de los gráficos de Trellis para R.
Es útil cuando se requiere hacer una exploración de datos con varias variables, por ejemplo una comparación entre esas variables por varios años o varios periodos.
Al trabajar en análisis de datos muchas veces nos encontraremos con problemas que involucran varias variables de distinta naturaleza (categóricas, cuantitativas, cualitativas…). El tratamiento de este tipo de problemas puede ser trabajoso y Lattice nos puede ayudar a reducir el tiempo de análisis, pues es potente y elegante y está enfocado en la visualización de datos multivariables. Además ofrece una gran flexibilidad: puede satisfacer desde los requerimientos más típicos hasta los más particulares.
Veamos como funciona esta librería, para lo cual utilizaremos el conjunto de datos mtcars.
Primero instalaremos la libreria Lattice, luego la llamaremos y crearemos un gráfico de barras con la función barchart. Los argumentos de la función son los datos a graficar (marchas), el titulo del gráfico (main), la etiqueta para el eje x (xlab), se indica que las barras son verticales (horizontal) y por ultimo el color del gráfico (col).
install.packages(«lattice»)
library («lattice»)
marchas <-table(mtcars$gear)
barchart(marchas, main=»Distribución por marchas», xlab=»Número de marchas», horizontal=»false», col=»yellow»)
Con el comando attach, hacemos que no tengamos que introducir cada vez el nombre del conjunto de datos (mtcars) que estamos utilizando. Así en lugar de introducir mtcars$mpg, bastará con introducir ~mpg o mpg.
attach (mtcars)
Para revertir esto, utilizaremos el comando dettach de análoga forma. Con las siguientes instrucciones creamos niveles de cilindros y marchas, es decir agrupamos los datos en categorías.
cyl.f <-factor(cyl,levels=c(4,6,8), labels=c(«4 cilindros»,»6 cilindros»,»8 cilindros»)) gear.f<-factor(gear,levels=c(3,4,5), labels=c(«3 marchas»,»4 marchas»,»5 marchas»))
Veamos ahora como crear un gráfico de densidad en el que se representan las millas por galón: densityplot(~mpg,main=»Gráfico de Densidad», xlab=»Millas por Galón»)
Ahora veamos como hacer un gráfico de densidad por número de cilindros. Aquí ya aplicamos los factores (cyl.f).
densityplot(~mpg|cyl.f,main=»Gráfico de Densidad por Número de Cilindros»,xlab=»Millas por Galón»)
Con esta instrucción generamos el mismo gráfico pero en tres filas en lugar de 3 columnas:
densityplot(~mpg|cyl.f,main=»Gráfico de Densidad por Número de Cilindros»,xlab=»Millas por Galón»,layout=c(1,3))
dotplot(cyl.f~mpg|gear.f,main=»Dotplot Plot por Numero de Marchas y Cilindros», xlab=»Millas Por Galón»)
Nótese que se enlazan las categorías que se quieren mostrar, con «~» y a continuación, el símbolo «|» hace de «por». Se leería:»cyl. f y mpg por gear.f» ( En cada «gear» como se distribuyen «cyl.f y mpg»).
xyplot(mpg~wt|cyl.f*gear.f,main=»Scatterplots por Cilindros y Marchas»,ylab=»Millas por Galón», xlab=»Peso del coche»)
Nótese que los factores los enlazamos con «*»
También podemos generar un gráfico 3d. En este caso, mostramos las millas por galón, el peso del coche y los segundos para recorrer el cuarto de milla en función del número de cilindros.
cloud(mpg~wt*qsec|cyl.f,main=»Scatterplot 3d por Cilindros»)
splom(mtcars[c(1,3,4,5,6)],main=»Datos de MTCARS»)