13.5 Outros gráficos bivariados

As funções xyplot() e bwplot() são oriundas do pacote lattice (Sarkar 2020) e permitem visualizar rapidamente relações entre variáveis por subgrupos de forma simples e rápida.

# muitas funções do R interpretam formulas, que é uma forma simbólica curta para designar coisas complexas
?formula # leia com atenção a sessão de detalhes de como você pode especificar formulas, se ainda não fez isso, pois isso é uma forma de indicar ao R um modelo para graficar
# no objeto iris
plot(Sepal.Length + Sepal.Width ~ Species, data = iris, ylim = c(0, 13))
plot(Sepal.Length ~ Species, data = iris, add = T, col = "red", xlab = "", ylab = "", xaxt = "n", yaxt = "n")
plot(Sepal.Width ~ Species, data = iris, add = T, col = "blue", xlab = "", ylab = "", xaxt = "n", yaxt = "n")
# ou seja a primeira figura é o mesmo que fazer:
tt <- iris$Sepal.Length + iris$Sepal.Width
plot(tt ~ iris$Species, add = T, col = "green")

# pois neste caso estamos plotando boxplots e a distribuicao dos valores da interacao entre comprimento e largura é basicamente a soma dos valores
## Graficos condicionados com o pacote lattice
library("lattice") # carregue o pacote
# qual a relacao entre comprimento de sepalas e comprimento de petalas por especie?
?xyplot # veja o help dessa funcao
xyplot(Sepal.Length ~ Petal.Length | Species, data = iris)

# ou mais complexo. Qual a relação entre as quatro variaveis em iris, por especie?
xyplot(Sepal.Length + Sepal.Width ~ Petal.Length + Petal.Width | Species, data = iris, scales = "sliced", auto.key = T)

# note que neste caso as correlacoes estao individualizadas por espécie e que as cores representam as relações das variáveis par par
?bwplot # para multiplos boxplots
## um data.frame com as duas especies mais abundantes do caixetal
head(caixeta)
local parcela arvore fuste cap h especie ab
chauas 1 1 1 210 80 Myrcia sulfiflora 34636.06
chauas 1 3 1 170 80 Myrcia sulfiflora 22698.01
chauas 1 4 1 720 70 Syagrus romanzoffianus 407150.41
chauas 1 5 1 200 80 Tabebuia cassinoides 31415.93
chauas 1 6 1 750 170 indet.1 441786.47
chauas 1 7 1 320 80 Myrcia sulfiflora 80424.77
tb <- table(caixeta$especie)
maisabund <- names(tb[order(tb, decreasing = T)][1:2])
maisabund
## [1] "Tabebuia cassinoides" "Myrcia sulfiflora"
# filtra os dados orginais para essas especies
caixeta2 <- caixeta[caixeta$especie %in% maisabund, ]

# distribuicao dos valores de altura por local para cada especie
bwplot(h ~ local | especie, data = caixeta2)

# distribuicao dos valores de cap por classes de altura, por especie
bwplot(h ~ cap | especie, data = caixeta2)

# relacao altura vs cap por especie e por local
xyplot(h ~ cap | especie + local, data = caixeta2, auto.key = T)

Referências

Sarkar, Deepayan. 2020. lattice: Trellis Graphics for R. http://lattice.r-forge.r-project.org/.