Locking color key in levelplot in r

3.8k views Asked by At

I am using levelplots to display matrices and the plots are below. Though same col.regions are used for both the plots, the colour key is different. How can we lock (or set) the colour key for both level plots? I want the same colour key (0 to 60) for both plots.

enter image description here

enter image description here

1

There are 1 answers

0
ialm On BEST ANSWER

Try setting the at and colorkey parameters.

In my example, I use the rasterVis package, which just extends the lattice plotting functions for rasters, but it should not be necessary. I just wanted to use the BuRdTheme() function to set my own theme.

Example:

require(rasterVis)

# My matrix
my.mat1 <- matrix(rnorm(5*5),5,5)
my.mat2 <- matrix(rnorm(5*5,2,2),5,5)

# Custom theme (from rasterVis package)
my.theme <- BuRdTheme()

# Find the min and max values
my.min <- min(my.mat1, my.mat2)
my.max <- max(my.mat1, my.mat2)

# Customize the colorkey
my.at <- seq(my.min, my.max, length.out=length(my.theme$regions$col)-1)
my.ckey <- list(at=my.at, col=my.theme$regions$col)

# Level plot
levelplot(my.mat1, par.settings=my.theme, at=my.at, colorkey=my.ckey)
levelplot(my.mat2, par.settings=my.theme, at=my.at, colorkey=my.ckey)

my.mat1 my.mat2