El arte de programar en R Un leguaje para la estadística - page 164

CAPÍTULO 6. GRAFICACIÓN CON R
161
# están dadas por:
lambdas
<-
c
(
6
,
10
,
13
)
Para pintar las leyendas de ambas gráficas de manera que incluya expre-
siones simbólicas, con la letra griega lambda, semejantes a:
λ
=
6, es necesario
hacer la siguiente manipulación:
qq
<-
as.expression
(
lapply
(lambdas,
function
(
x
)
bquote
(lambda
==
.
(x))))
# De este modo se tiene 'qq' como una expresión de tres
# componentes:
qq
## expression(lambda == 6, lambda == 10, lambda == 13)
Y entonces, para producir los gráficos correspondientes se hace con:
# La función de densidad de probabilidades se guarda en un
# data frame; una columna por cada lambda
ds
<-
as.data.frame
(
lapply
(lambdas,
function
(
ll
)
dpois
(x, ll)))
names
(ds)
<-
lambdas
# Igual, para la función de distribución de probabilidades,
Ps
<-
as.data.frame
(
lapply
(lambdas,
function
(
ll
)
ppois
(x, ll)))
names
(Ps)
<-
lambdas
# En la primer iteración se usará la función plot,
# y en todas las demás la función lines:
funcs
<-
list
(plot, lines)
for
(i
in
1
:
3
) {
ff
<-
funcs[[
1
+
(i
!=
1
)]]
# se elige la función
ff
(x,ds[[i]],
type
=
"o"
,
pch
=
21
,
bg
=cc[i])
}
# En la leyenda se incluye las expresión calculada antes
# y guardada en 'qq', para obtener los símbolos lambda
legend
(
"topright"
,
legend
=qq,
lty
=
1
,
pch
=
21
,
pt.bg
=cc)
for
(i
in
1
:
3
) {
ff
<-
funcs[[
1
+
(i
!=
1
)]]
# se elige la función
ff
(x,Ps[[i]],
type
=
"s"
)
points
(x,Ps[[i]],
pch
=
21
,
bg
=cc[i])
}
1...,154,155,156,157,158,159,160,161,162,163 165,166,167,168,169,170,171,172,173,174,...198
Powered by FlippingBook