Skip to content

Creating multipanel levelplot with common color legend

1 message · Pascal Oettli

#
One possibility.

I also include the list, for someone to do better job.


age2100 <- read.csv("testinglattice.csv",header=T,sep=",")
colnames(age2100) <- c('Eastings','Northings','Salinity','Time')

sub.basesal <- subset(age2100, Time=='basesal')
tmp <- with(sub.basesal, akima::interp(Eastings, Northings, Salinity, 
xo=seq(min(Eastings),max(Eastings), length=100),
 
yo=seq(min(Northings),max(Northings), length=100)))
sub.basesal <- expand.grid(Eastings=tmp$x,Northings=tmp$y)
sub.basesal$Salinity <- as.vector(tmp$z)
sub.basesal$Time <- factor('basesal')
rm(tmp)

sub.sal2050 <- subset(age2100, Time=='sal2050')
tmp <- with(sub.sal2050, akima::interp(Eastings, Northings, Salinity, 
xo=seq(min(Eastings),max(Eastings), length=100),
 
yo=seq(min(Northings),max(Northings), length=100)))
sub.sal2050 <- expand.grid(Eastings=tmp$x,Northings=tmp$y)
sub.sal2050$Salinity <- as.vector(tmp$z)
sub.sal2050$Time <- factor('sal2050')
rm(tmp)

sub.sal2100 <- subset(age2100, Time=='sal2100')
tmp <- with(sub.sal2100, akima::interp(Eastings, Northings, Salinity, 
xo=seq(min(Eastings),max(Eastings), length=100),
 
yo=seq(min(Northings),max(Northings), length=100)))
sub.sal2100 <- expand.grid(Eastings=tmp$x,Northings=tmp$y)
sub.sal2100$Salinity <- as.vector(tmp$z)
sub.sal2100$Time <- factor('sal2100')
rm(tmp)

age2100.akima <- rbind(sub.basesal, sub.sal2050, sub.sal2100)


   levelplot(Salinity ~ Eastings+Northings | Time, age2100,
             panel=function(x,y,subset,...)
             {
               panel.levelplot.points(x,y,subset,...)
             },
             aspect = "iso", scales = list(draw=FALSE),
             cuts=40,smooth=T,
             colorkey = list(space = "right"),
             col.regions = rainbow(100, start = 3/15, end = 1),
             xlim=c(435000,468900),ylim=c(3337500,3374500),
             autokey=list(title="An image"),
             main="",
             col.symbol=0) +
   contourplot(Salinity ~ Eastings+Northings | Time, age2100.akima, cuts=40)

Pascal


Le 14/02/2013 11:59, Janesh Devkota a ?crit :