Gráfico de dispersión

datos = read.csv("Datos.csv", sep = ";", dec = ",", header = T)
datos
A data.frame: 8 × 5
NombreEdadGéneroPesoEstrato
<fct><int><fct><dbl><int>
Ángela 22F 62.53
José 10M 75.84
Juan 15M 54.43
Manuela35F 73.63
Maribel50F 70.05
Antonio45M180.04
Alicia 1F 15.71
Luis 32M103.55

Función Plot()

La función más básica en R para graficar es plot().

# Con una variable

plot(datos$Edad)
../../_images/output_4_0.png
# Con dos variables: X = Edad, y = Peso

plot(datos$Edad, datos$Peso)
../../_images/output_5_0.png

Argumentos de la función plot()

plot(x, y, …)

  • main - Título.

  • sub - Subítulo.

  • xlab - nombre la X.

  • ylab - nombre la y.

plot(datos$Edad, datos$Peso, main = "El título",
    xlab = "Edad",
    ylab = "Peso",
    sub = "El subtítulo")
../../_images/output_9_02.png

type o t:

  • = "p" - Puntos (por defecto).

  • = "l" - Líneas (útil para series de tiempo).

  • = "b" - Puntos y líneas separados.

  • = "o" - Puntos y líneas no separados.

  • = "s" - Escaleras.

  • = "h" - estilo histograma.

  • = "n" - Gráfico vacío.

Colores:

El argumento es col y color se puede especificar de la siguiente forma:

  • Con números.

  • Con el nombre en inglés del color y entre comillas.

  • Con el valor HEX, por ejemplo, col = "#0000FF".

  • Con el RGB, por ejemplo, col = rgb(0, 0, 1).

plot(datos$Edad, datos$Peso, main = "El título",
    xlab = "Edad",
    ylab = "Peso",
    sub = "El subtítulo",
    t = "h",
    col = 42)
../../_images/output_12_03.png

pch: Modifica los puntos con los siguientes símbolos.

pch

pch

El tamaño de los símbolos se cambian con cex. El tamaño de los símbolos del 15 al 18 se cambia con lwd.

bg - Para cambiar el color del fondo de los símbolos.

lwd - También sirve para el ancho del borde de los símbolos.

plot(datos$Edad, datos$Peso, main = "El título",
    xlab = "Edad",
    ylab = "Peso",
    pch = 24,         # Símbolo
    cex = 3,          # Tamaño del símbolo
    col = "darkred",  # Color del borde
    bg = "darkgray",  # Color del fondo
    lwd = 4)          # Ancho del borde
../../_images/output_17_01.png

Límites de los ejes:

Sirven para acercar o alejar el gráfico.

  • ylim = c(mínimo, máximo) - Para el rango del eje y.

  • xlim = c(mínimo, máximo) - Para el rango del eje X.

plot(datos$Edad, datos$Peso, main = "El título",
    xlab = "Edad",
    ylab = "Peso",
    pch = 24,
    cex = 3,
    col = "darkred",
    bg = "darkgray",
    lwd = 4,
    ylim = c(-100, 150),
    xlim = c(0, 100))
../../_images/output_19_02.png

Color de fondo:

El color de fondo por defecto es "white", pero se puede modificar con par(bg = color).

par(bg = "#f7f7f7")    # Fondo gris
plot(datos$Edad, datos$Peso, main = "El título",
    xlab = "Edad",
    ylab = "Peso",
    pch = 24,
    cex = 3,
    col = "darkred",
    bg = "darkgray",
    lwd = 4,
    ylim = c(-100, 150),
    xlim = c(0, 100))
../../_images/output_21_03.png

Añadir líneas o curvas:

Se agrega una línea de código de lines()

  • lwd - Grosor de la línea (del 1 al 6).

  • lty - Tipo de línea (del 1 al 6).

par(bg = "#f7f7f7")
plot(datos$Edad, datos$Peso, main = "El título",
    xlab = "Edad",
    ylab = "Peso",
    pch = 24,
    cex = 3,
    col = "darkred",
    bg = "darkgray",
    lwd = 4,
    ylim = c(-100, 150),
    xlim = c(0, 100))
lines(0:100, -100:0, lwd = 2, col = "green")
lines(0:100, 10:110, lwd = 2, col = "darkblue", lty = 3)
../../_images/output_23_04.png

Leyenda:

Se agrega una línea de código de legend()

  • "top" - Ubicación de la leyenda arriba.

  • "bottom" - Ubicación de la leyenda abajo.

  • "topleft" - Ubicación de la leyenda arriba a la izquierda.

  • "topright" - Ubicación de la leyenda arriba a la derecha.

  • "bottomleft" - Ubicación de la leyenda abajo a la izquierda.

  • "bottomright" - Ubicación de la leyenda abajo a la derecha.

par(bg = "#f7f7f7")
plot(datos$Edad, datos$Peso, main = "El título",
    xlab = "Edad",
    ylab = "Peso",
    pch = 24,
    cex = 3,
    col = "darkred",
    bg = "darkgray",
    lwd = 4,
    ylim = c(-100, 150),
    xlim = c(0, 100))
lines(0:100, -100:0, lwd = 2, col = "green")
lines(0:100, 10:110, lwd = 2, col = "darkblue")
legend("bottomright", c("Línea verde", "Línea azul"),
       lty = c(1, 3),
       lwd = c(3, 3),
       col = c("green", "darkblue"))
../../_images/output_25_01.png

Dividir la ventana de gráficos:

Se usa la función layout() especificando como matriz la cantidad de particiones. Se finaliza con layout.show().

Para devolver la ventana de gráficos en una sola (por defecto) se usa dev.off().

layout(matrix(c(1:4), 2,2))
layout.show(4) # Muestra las cuatro particiones
../../_images/output_27_01.png
layout(matrix(c(1:2), 2,1))
layout.show(2) # Muestra las dos particiones
../../_images/output_28_01.png
layout(matrix(c(1:2), 1,2))
layout.show(2) # Muestra las dos particiones
../../_images/output_29_01.png