R es ampliamente utilizado para la generación de gráficos estadísticos de alta calidad. Los paquetes para gráficos más utilizados en R son graphics, grDevices (conforman el sistema de gráficos Base), Lattice y Ggplot2.
Sistema gráficos base
Se basa en la utilización de los paquetes:
- graphics.Funciones gráficas hist() plot(), etc.
- grDevices.Funciones de dispositivos gráficos pdf() png() ,etc.
Caracteristicas:
- Modelo paleta de artista
- Crea lienzo del gráfico
- Se añaden elementos utilizando funciones, por ejemplo points()
- Muy intuitivo
- No posee un lenguaje gráfico estándar
- Llama a varias funciones, lo que da lugar a códigos extensos.
- Una vez empezado el gráfico no es posible volver al inicio
- Permite fijar inicialmente layouts (margenes,espacios,etc) a través de la función par ().
Dispositivos gráficos en el sistema base
Un dispositivo gráfico es el “sitio” donde hacemos que aparezca el gráfico, y puede ser:
- Una ventana del ordenador
- En Unix/Linux se lanza con x11()
- En Windows se lanza con windows()
- En Mac se lanza con quartz()
- Un archivo PDF
- Un archivo PNG o JPEG
- etc.
Para cerrar la ventana gráfica actual escribiremos:dev.off()
Para cerrar cualquier ventana gráfica, aunque no sea la actual escribiremos:dev.off(número de ventana)
En el caso de que haya varias ventanas gráficas, podemos cambiar entre ellas utilizando
el comando dev.set(). Un ejemplo:
> windows() # Crea una ventana gráfica (dispositivo 2)
> windows() # Crea otra ventana gráfica (dispositivo 3): ésta es ahora la
ventana activa
> dev.set(2) # Hace que la ventana activa sea la dos.
Cuando hacemos un gráfico, debemos considerar para qué usaremos el gráfico para determinar a qué dispositivo gráfico debemos enviarlo. El lugar más común para enviar un gráfico es a una ventana y este es al que por defecto los manda R
si no indicamos lo contrario.
La lista de dispositivos gráficos disponible en R
se obtiene ejecutando el comando ?device
.
Podemos ver un buen conjunto de ejemplos de gráficos con demo(graphics)
.
El comando plot()
es uno de los más utilizados para realizar gráficos.Si escribimos plot
(x, y) donde x e y son vectores con n coordenadas, entonces R representa el gráfico de dispersión con los puntos de coordenadas (xi, yi)
El principal comando para generar un gráfico en R
es plot()
.
Vamos a generar un vector aleatorio de dimensión 10 y representarlo gráficamente. Uno de los argumentos más útiles es type
cuyos parámetros pueden ser: p
para puntos, l
para líneas, … (?plot). Veamos el código.
x <- rnorm(10)
par(mfrow = c(2,3), mar = c(3.1, 3.1, 2.1, 0.5))
plot(x, type = "p", main = "type = p", xlab = "", ylab = "")
plot(x, type = "l", main = "type = l", xlab = "", ylab = "")
plot(x, type = "b", main = "type = b", xlab = "", ylab = "")
plot(x, type = "c", main = "type = c", xlab = "", ylab = "")
plot(x, type = "o", main = "type = o", xlab = "", ylab = "")
plot(x, type = "h", main = "type = h", xlab = "", ylab = "")
La función par
es el conjunto de los parámetros gráficos. Las funciones de plot de los objetos generados en R le pasan sus argumentos a la función par
.
El comando mfrow
indica el número de filas y columnas en que organizamos los datos.
El argumento mar
es un argumento al que se asigna un vector numérico con 4 valores , que definen el tamaño de los 4 márgenes de la ventana del gráfico. Por defecto mar=c(5,4,4,2)+ .1