1) функция панели Используйте функцию панели следующим образом:
xyplot(myx + myz ~ mydate, dat, outer = TRUE, type = "l", layout = 1:2,
panel = function(...) {
panel.xyplot(...)
panel.abline(v = events$mydate)
})
2) layer или используйте слой в latticeExtra:
library(latticeExtra)
xyplot(myx + myz ~ mydate, dat, outer = TRUE, type = "l", layout = 1:2) +
layer(panel.abline(v = mydate), data = events)
2a) xyplot.zoo Обратите внимание, что это можно немного упростить с помощью zoo:
library(latticeExtra)
library(zoo)
z <- read.zoo(dat)
xyplot(z) + layer(panel.abline(v = mydate), data = events)
Примечание
Чтобы добавить только первую вертикальную линию к первойпанель и вторая вертикальная линия ко второй панели:
xyplot(z) +
layer(panel.abline(v = mydate[1]), data = events, packets = 1) +
layer(panel.abline(v = mydate[2]), data = events, packets = 2)
или
vline <- function(i) {
layer(panel.abline(v = events$mydate[i]), data = list(i = i), packets = i)
}
Reduce("+", init = xyplot(z), lapply(1:2, vline))