对于下面的(简化的)时间序列图,是否有一种巧妙的方法使用lattice::xyplot
将红色的负值着色为绿色,而将绿色的负值着色为绿色?
set.seed(0)
xyplot(zoo(cumsum(rnorm(100))), grid=T)
最佳答案
格子基于grid
,因此您可以使用网格的裁剪功能
library(lattice)
library(grid)
set.seed(0)
x <- zoo(cumsum(rnorm(100)))
xyplot(x, grid=TRUE, panel = function(x, y, ...){
panel.xyplot(x, y, col="red", ...)
grid.clip(y=unit(0,"native"),just=c("bottom"))
panel.xyplot(x, y, col="green", ...) })
关于r - xyplot时间序列,其中绿色为正值,红色为负值,以R为单位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35805016/