Using lattice in R, I have plotted an xyplot using the factors option. Now I want to add a horizontal abline to every plot, however out of another dataframe. How can I get these
I think you have to use a custom panel function.
library(lattice)
MyData <- data.frame(
v1 = 1:50,
v2 = rnorm(50,20,5),
v3 = c(rep("one", 10), rep("two", 10), rep("three", 10), rep("four", 10), rep("five", 10)))
lineData <- c(30,30,20,20,40)
# define custom panel plot function
customPanel = function(x, y, lineData) {
panel.xyplot(x, y)
panel.abline(h = lineData[panel.number()]) # instead of using a global variable
}
xyplot(
v1 ~ v2 | v3,
data = MyData,
layout = c(5, 1),
scales = list(
x = list(relation="free"),
y = list(relation="same")
),
panel = customPanel,
lineData = lineData)