在r中的levelplot中锁定颜色键

时间:2013-08-22 20:10:11

标签: r levelplot

我正在使用水平图来显示矩阵,下面是图。 虽然两个图都使用相同的col.regions,但颜色键是不同的。 我们如何锁定(或设置)两个水平图的颜色键? 我想要两个图的相同颜色键(0到60)。

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:8)

尝试设置atcolorkey参数。

在我的示例中,我使用rasterVis包,它只是扩展了栅格的lattice绘图函数,但它不是必需的。我只是想使用BuRdTheme()函数来设置我自己的主题。

示例:

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