Kenneth Roy Cabrera Torres
miércoles, 04 de abril de 2018
Se ecapsula en los siguientes paquetes:
plot
, hist
, boxplot
, etc.X11
, PDF
, PostScript
, PNG
, etc.Considere:
lattice
o ggplot2
.
En general no se pueden mezclar estos sitemas.
lattice
sólo usa una función donde se
especifican todos los parámetros.ggplot2
combina conceptos tanto del básico
como del lattice
.Es la forma más común.
plot(x, y)
o hist(x)
, simpre abre
una nueva gráfica. Y funciones como lines(x, y)
o
points(x)
se adicionan a una gráfica ya existente.plot(x,y)
no es de una clase especial, se
usa el plot por omisión. Tiene muchos argumentos,
como título, etiqueta del eje x
, etiqueta del eje y
.?par
.require(datasets)
hist(airquality$Ozone)
require(datasets)
with(airquality, plot(Wind, Ozone))
require(datasets)
airquality <- transform(airquality, Month2 = factor(Month))
boxplot(Ozone ~ Month2, airquality, xlab = "Mes", ylab = "Ozono (ppmm)")
Algunos parámetros los comparten varias funciones:
pch
: El símbolo de la gráfica (por omisión un círculo abierto).lty
: Tipo de línea (por omisión sólida, punteada, etc.).lwd
: Grosor de la línea. Como un entero.col
: Color. Puede ser con un número, una sarta,
un código hexadesimal. La función colors()
muestra los
nombres de los colores.xlab
, ylab
y main
: Etiqueta x
, y
y título.En la función par()
se indican parámetros globales que afectan
una sesión de R. Algunos comunes son:
las
: La orientación de las etiquetas con respecto al eje
de la gráfica.bg
: El color de fondo.mar
: Tamaño de la márgen.oma
: Tamaños de la márgen exterior.mfrow
mfcol
: Número de gráfica por fila y columa.Valores por omisión de algunos parámetros
par("lty")
[1] "solid"
par("col")
[1] "black"
par("pch")
[1] 1
par("bg")
[1] "white"
par("mar")
[1] 5.1 4.1 4.1 2.1
par("mfrow")
[1] 1 1
plot
: Diagrma de dispersión.lines
: Adiciona líneas. Conecta puntos.points
: Adiciona puntos.text
: Adiciona texto en coordenadas x
, y
.title
: Adiciona título, subtítulo, etiquetas.mtext
: Adiciona téxto a las márgenes (interiores y exteriores)axis
: Adciciona aspectos a los ejes.require(datasets)
with(airquality, plot(Wind, Ozone))
title(main = "Ozono y viento en la ciudad de Nueva York")
require(datasets)
with(airquality, plot(Wind, Ozone, main = "Ozono y viento en la ciudad de Nueva York"))
with(subset(airquality, Month == 5), points(Wind, Ozone, col = "blue"))
with(airquality, plot(Wind, Ozone, main = "Ozono y viento en la ciudad de Nueva York", xlab = "Velocidad del viento (Mph)", ylab = "Ozono (ppmm)",
type = "n"))
with(subset(airquality, Month == 5), points(Wind, Ozone, col
= "blue"))
with(subset(airquality, Month != 5), points(Wind, Ozone, col
= "red"))
legend("topright", pch = 1, col = c("blue", "red"), legend =
c("Mayo", "Demás meses"))
with(airquality, plot(Wind, Ozone, main = "Ozono y viento en la ciudad de Nueva York",
pch = 20))
modelo <- lm(Ozone ~ Wind, airquality)
abline(modelo, lwd = 2)
op <- par(no.readonly = TRUE)
par(mfrow = c(1, 2))
with(airquality, {
plot(Wind, Ozone, main = "Ozone y viento")
plot(Solar.R, Ozone, main = "Ozone y radiación solar")
})
par(op)
op <- par(no.readonly = TRUE)
par(mfrow = c(1, 3), mar = c(4, 4, 2, 1), oma = c(0, 0, 2, 0))
with(airquality, {
plot(Wind, Ozone, main = "Ozone y viento")
plot(Solar.R, Ozone, main = "Ozone y radiación solar")
plot(Temp, Ozone, main = "Ozone y temperatura")
mtext("Ozono y clima en la ciudad de Nueva York", outer = TRUE)
})
par(op)
Se utilizan los siguientes paquetes:
lattice
: Produce gráficas tipo Trellis, que son
independientes del modo básico. Ejemplo xyplot
,
bwplot
, levelplot
.grid
: Es el sistema sobre el cual el lattice
se construye. Ráramente se utilizan sus funciones.xyplot
: Esta es la función principal.bwplot
: Caja y bigotes.histogram
:stripplot
: Como uno de caja y bigotes pero con puntos.dotplot
: Diagrama de puntos.splom
: Una matriz de gráficas.levelplot
, countourplot
: Para datos de imágenes.xyplot(y ~ x | f * g, data)
~
.y
y en el lado
derecho el eje x
.f
y g
son variables condicionales (generalmente factores).data
Es la base de datos en donde están las variables.require(lattice)
require(datasets)
xyplot(Ozone ~ Wind, data = airquality)
require(datasets)
require(lattice)
airquality <- transform(airquality, Month2 = factor(Month))
xyplot(Ozone ~ Wind | Month2, data = airquality, layout = c(5, 1))
device
) ya sea la pantalla, un archivo
PDF, etc.lattice
devuelven un objeto tipo trellis.lattice
en la consola
los resultados se “autoimprimen”.p <- xyplot(Ozone ~ Wind, data = airquality)
## No muestra nada.
print(p) ## Se muestra la gráfica.
xyplot(Ozone ~ Wind, data = airquality) ## Se autoimprime
lattice
viene con funciones de panel
por omisión, pero uno puede construir funciones propias.x
y y
junto
con otros parámetros.set.seed(10)
x <- rnorm(100)
f <- rep(0:1, each = 50)
y <- x + f - f * x + rnorm(100, sd = 0.5)
f <- factor(f, labels = c("Groupo 1", "Groupo 2"))
xyplot(y ~ x | f, layout = c(2, 1)) ## Gráfica con dos páneles
## Custom panel function
xyplot(y ~ x | f, panel = function(x, y, ...) {
panel.xyplot(x, y, ...) ## Llamado a la función xyplot
panel.abline(h = median(y), lty = 2) ## Adcionar una línea horizontal para la mediana
})
xyplot(y ~ x | f, panel = function(x, y, ...) {
panel.xyplot(x, y, ...) ## Llamado a la función xyplot
panel.lmline(x, y, col = 2) ## Una línea de regresión
})