R中的图层图

时间:2013-04-04 23:54:16

标签: r data-visualization lattice

我需要对散点图和allEffects plot进行分层。以下是一些示例数据:

library("effects")
x<-c(1,2,6,7,4,3,5)
y<-c(5,6,3,6,9,4,4)
a<-as.factor(c(1,1,1,2,2,2,2))
xyplot(y ~ x|a)
lm.y<-lm(y~x*a)
plot(allEffects(lm.y))

要清楚,我希望xyplotplot(allEfects...)情节上分层。我很感激任何建议。

2 个答案:

答案 0 :(得分:0)

我建议使用ggplot2包,看起来应该是这样的。

ggplot(data, aes(y=y, x=x)) + 
  geom_point(shape = 1) +
  geom_smooth(method="lm", fullrange=T) +
  facet_grid(~a) + 
  theme(aspect.ratio = 1)

它允许你分层图。

话虽如此 - 这不是一个完整的回应,因为我不确定如何合并你的allEffects()信息。其他人可能会提供更好的反馈。

答案 1 :(得分:0)

latticeExtra提供了几个要组合的功能 trellis个对象:+.trellisc.trellislayer 家庭。您需要+.trellis

library("effects")
library("latticeExtra")

x <- c(1,2,6,7,4,3,5)
y <- c(5,6,3,6,9,4,4)
a <- as.factor(c(1,1,1,2,2,2,2))

pxy <- xyplot(y ~ x|a)

lm.y <- lm(y~x*a)
aef <- allEffects(lm.y)

plot对象的efflist方法存在问题 (allEffects的结果):它只打印trellis对象 但没有回报。诀窍是使用plot方法 eff个对象(efflist对象的组件) 定义为返回trellis个对象。你的例子的效果 可以使用aef[[1]]提取

peff <- plot(aef[[1]])

最后一步+.trellis

peff + pxy

effects with layers