1

我已经实现了格子图,我需要拆分我的数据以获得湖泊不同站点的表示,每个团队制作的每个复制品的线和点都在这个湖中工作。我设法做到了,但是传奇是由所有团队在这个练习中工作并出现在我的数据库中的,而不仅仅是出现在我的情节中的那些。

# Expression des données physico



###############################################
#Expression des données pour Cromwell

#Préparation du panel
panel.my <- function(...) {
  panel.superpose(...)
}

trellis.par.set(superpose.symbol=list(pch=c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)),
                superpose.line=list(lty=c(1, 2, 3, 4, 5, 6, 7)))


#Graphique Temp avec lines
xyplot(prof~temp | lake * station,
       type=c("p", "l"),
       physico,
       subset=lake=="Crom",
       group=team,
       panel = panel.my, 
       xlim=c(6,15),
       ylim=c(10,-1),
       scales=list(x= list(at=seq(5, 15, 1)), y = list(at=seq(0, 10, 1))),
       auto.key =list(
         draw.key=list(text=list("Equipe 1", "Equipe 1'")),
         points = TRUE, 
         columns=2),
       xlab="Température",
       ylab="Profondeur",
)

结果:http ://environnementaliste.files.wordpress.com/2013/11/cromwell_temp.jpeg

有人知道在相关信息中限制我的传说吗?

谢谢!

卢卡斯

4

1 回答 1

0

要限制您的图例,请限制您传递给的数据xyplot。在您的代码中,您依赖于subset参数并传递整个数据集physico,包括您不想在图例中绘制和不想要的额外因素。所以而不是

...,
data = physico,
subset=lake=="Crom",
...

子集您传递的数据xyplot并删除未使用的级别

...,
data = droplevels(subset(physico, subset = lake == "Crom")),
...

使用可重现的代码和包中的CO2数据集datasets

levels(CO2$Plant)
#  [1] "Qn1" "Qn2" "Qn3" "Qc1" "Qc3" "Qc2" "Mn3" "Mn2" "Mn1" "Mc2" "Mc3" "Mc1"

library(lattice)

xyplot(conc~uptake | Type * Treatment,
       type=c("p", "l"),
       data = droplevels(subset(CO2, subset=Type=="Quebec")),
       group=Plant,
       auto.key =list(
         draw.key=list(text=list("Equipe 1", "Equipe 1'")),
         points = TRUE, 
         columns=2),
       xlab="Température",
       ylab="Profondeur",
)

删除了额外级别的绘图

于 2013-11-16T14:10:24.060 回答