2015-10-29 2 views
0

у меня есть вопрос о решетке из графика XY библиотеки в R.решетки графика XY - добавить линию регрессии к части данных

Вот пример данных:

set.seed(4) 
mydata <- data.frame(x.data = rnorm(50), 
       y.data = rnorm(50), 
       type = rep(c("A","B"), 50)) 
head(mydata) 

mod <- lm(x.data ~ y.data*type, data= mydata) 
summary(mod) 

xyplot(y.data + fitted(mod) ~ x.data, groups= type, data= mydata, auto.key=F) 

Как бы это было можно добавить регрессионную линию только для ввода данных типа А и только в установленной (модульной) части графика. Возможно ли иметь регрессионную линию только от минимального до максимального значения?

Я надеялся, что результат может выглядеть somethnig так: enter image description here

Спасибо за помощь. Я очень ценю это.

ответ

1
library(lattice) 
library(latticeExtra) 

set.seed(4) 
mydata <- data.frame(x.data = rnorm(50), 
        y.data = rnorm(50), 
        type = rep(c("A","B"), 50)) 
head(mydata) 

mod <- lm(x.data ~ y.data*type, data= mydata) 
p1 <- predict(mod, newdata = data.frame(y.data = range(mydata$y.data), type = "A")) 

xyplot(y.data + fitted(mod) ~ x.data, groups= type, data= mydata, auto.key=F) + 
    layer(panel.lines(range(mydata$x.data), p1, col = "black", lty = 1), rows = 1, columns = 2) 

enter image description here

+0

Великий. Спасибо, Паскаль. Еще один вопрос - можно ли ограничивать линию только в этой части, где доступны данные - от xmin до xmax? – Eco06

+0

@ Eco06 Ответ отредактирован. –

+0

Спасибо за этот быстрый повтор! – Eco06

Смежные вопросы