[R-br] xyplot: incluir equação e r2 no gráfico

Maurício Lordêlo mslordelo em gmail.com
Dom Maio 26 23:31:48 -03 2019


Caros,
Preciso incluir as equações do modelo ajustado e o R2 no gráfico construído
usando a função "xyplot" do pacote "lattice". Usei para o código mínimo
reproduzível os dados do próprio pacote mas não deu certo.
Agradeço quem puder auxiliar.
Maurício

library(lattice)
str(iris)
table(iris$Species)
iris_setosa = subset(iris, Species =="setosa")
mod1 = lm(Sepal.Length ~ Petal.Length, data=iris_setosa)
iris_versicolor = subset(iris, Species =="versicolor")
mod2 = lm(Sepal.Length ~ Petal.Length, data=iris_versicolor)
iris_virginica = subset(iris, Species =="virginica")
mod3 = lm(Sepal.Length ~ Petal.Length, data=iris_virginica)

tp_mod1 = sprintf("%s = %.2f + %.2f%s", "Y",
                  coef(mod1)[1], coef(mod1)[2], "X")
r2_mod1 = cor(iris_setosa$Sepal.Length, fitted(mod1))^2

tp_mod2 = sprintf("%s = %.1f + %.2f %s", "Y",
                  coef(mod2)[1], coef(mod2)[2], "X")
r2_mod2 = cor(iris_versicolor$Sepal.Length, fitted(mod2))^2

tp_mod3 = sprintf("%s = %.1f + %.2f %s", "Y",
                  coef(mod3)[1], coef(mod3)[2], "X")
r2_mod3 = cor(iris_virginica$Sepal.Length, fitted(mod3))^2

tp_mod1;r2_mod1
tp_mod2;r2_mod2
tp_mod3;r2_mod3
##Necessito em cada "tp_mod" incluir o r2 logo abaixo da respectiva
equação###

mypanel<-function(x,y,...)
{
  panel.xyplot(x, y, ...)
  panel.abline(mod1)
  panel.abline(mod2)
  panel.abline(mod3)
  panel.text(4,7,labels=tp_mod1)
  panel.text(3,8,labels=tp_mod2)
  panel.text(2,7,labels=tp_mod3)
}
#O gráfico gerado:
xyplot(Sepal.Length ~ Petal.Length | Species,panel = mypanel,
       data = iris,
       strip = strip.custom(par.strip.text = list(font = 3)))
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20190526/4a84f0f8/attachment.html>


Mais detalhes sobre a lista de discussão R-br