[GIS] Spplot labels in R how to change

labelinglegendr

Can anyone tell me how to change the labels in a legend created by spplot in R? It is a typical vertical ribbon legend automatically generated by spplot. Based on color, it is labelled 1-7 but I would like to label it 1%-7% and make the labels larger.

I understand that the graphics are based on lattice but it is still difficult to find anywhere how to do what, I would think, would be fairly straight forward.

The code I have is

plot2 <- spplot(mymap, "percentage", col.regions = plotclr, 
                     at = round(class$brks, digits=1) )

where: mymap is a typical shape file with an attributes column called percentage which pertains to certain map regions; plotclr is my vector of colors, class$brks are the divisions of the percentages to which the colors correspond. The code works fine. I just can't change the legend labeling.

Best Answer

I found an answer. I basically take everything I need into the colorkey function as follows.

plot3 <- spplot(mymap, "percentage", col.regions = plotclr,
                    at = round(class$brks, digits=1),
colorkey = list(labels = list( labels = c("0%", "1%","2%","3%","4%","5%","6%","7%"),        
                width = 2, cex = 2)))

Width changes the width of the ribbon legend. It is also possible to change it's height with height = some fraction of 1 = full height.

Looks like it was straight forward after all.

I found it, after much searching, under help(levelplot) in R.