5.3 Combinando gráficos
Hasta ahora en todos los ejemplos del tema hemos representado únicamente un gráfico en cada figura. Sin embargo, R nos permite también combinar varios gráficos en una sola figura o combinar varias figuras independientes en una sola.
Si lo que queremos es combinar varios gráficos en una sola figura podemos echar mano de funciones que permiten dibujar nueva información en una ventana gráfica previamente existente superponiendo gráficos. Ejemplos de este tipo de funciones son abline (para dibujar líneas de referencia), points (para dibujar puntos) o lines (para dibujar líneas en general).
<-1:10
x<-log(x)
y1<-log(x)+(1/x)
y2<-log(x)+(1/log(x))
y3plot(x, y1, pch=3, type="b", col="blue",
main="Varias gráficos juntos",
xlab="x", ylab="y", ylim=c(0,4))
lines(x, y2, pch=2, type="b", col="red")
points(x, y3)
abline(h=1.3, col="black", lty='dotted') # Una línea horizontal en y=1.3
abline(v=7, col="#04B404", lty=2) # Una línea vertical en x=7
También podemos combinar varias figuras independientes en una sola utilizando la función par:
<-1:100
x<-log(x)
y1<-log(sin(x)^2)
y2par(mfrow=c(2,2))
plot(x, y1, type="b")
plot(x, y2, type="b")
hist(y1, breaks=10)
hist(y2, breaks=10)
Se puede ver que mediante la llamada a la función par con el parámetro mfrow hemos indicado que queremos combinar cuatro gráficos dispuestos en dos filas y dos columnas.
Si queremos tener un control más fino de dónde se posiciona cada figura y de su tamaño podemos utilizar el parámetro fig de la función par.
Este parámetro recibe como valor un vector numérico con cuatro elementos, que permiten definir la posición y tamaño del rectángulo en el que se va a dibujar la figura de la siguiente forma:
= c(x1, x2, y1, y2) fig
Donde:
El par (x1, y1) determina la posición de la esquina inferior izquierda del rectángulo.
El valor de x2-x1 especifica el ancho del rectángulo.
El valor y2-y1 especifica el alto del rectángulo.
Cada uno de los cuatro elementos debe tomar un valor entre 0 y 1.
Así por ejemplo, si queremos dibujar dos figuras, una en la esquina superior izquierda y otra en la esquina inferior derecha, podemos ejecutar la siguiente secuencia de expresiones en la consola de R:
<-1:100
x<-log(x)
y1<-log(sin(x)^2)
y2par(fig=c(0,0.6,0.5,1))
plot(x, y1, main="Función log(x)")
par(fig=c(0.4,1,0,0.5), new=TRUE)
plot(x, y2, main=expression(paste("Función log(",x^2,")")))
Un aspecto que debemos tener en consideración es que al llamar a la función par con el parámetro fig se crea una nueva ventana gráfica. Si queremos dibujar varios gráficos en la misma figura debemos utilizar el parámetro new con valor TRUE, como hemos hecho en el ejemplo anterior.