2

I am plotting a SpatialPoint dataframe in R using spplot, and I would like to use a colorbar rather than a legend, to portray color values. (It's more efficient, and I want the map to "match" previous, raster data maps.) I'm sure this is possible, but can find no examples of it online. Could anyone give me a hint?

My current code is:

my.palette <- brewer.pal(n = 9, name = "Spectral")
my.palette<- rev(my.palette)
pols1 <- list("sp.lines", as(ugborder, 'SpatialLines'), col = gray(0.4), lwd = 1)
pols2 <- list("sp.polygons", as(water_ug, 'SpatialPolygons'), fill = 'skyblue1',col="transparent", first = FALSE)

spplot(ughouseszn,zcol="lzn_sg_clng",cex = .75,
   key.space="right", digits=1,
   par.settings = list(axis.line = list(col =  'transparent')), 
   xlim = bbox(ugborder)[1, ],ylim = bbox(ugborder)[2, ],
   col.regions = my.palette, cuts=8,
   sp.layout=list(pols1, pols2))

Where ugborder and water_ug give Uganda's borders and water, ughouseszn is a SpatialPointsDataframe, and the resulting map is here: enter image description here

(As a side note, I'm hoping that adding a colorbar will lead to a more efficient use of space -- right now there's a lot of extra space at the top and bottom of Uganda's border, which is useless, and also does NOT appear when I map raster data using spplot, with the same pols1 and pols2.)

Leah Bevis
  • 317
  • 1
  • 11
  • Advanced folks: is there a problem with the way I phrased this question? Or is it truly that nobody knows the answer? – Leah Bevis Mar 01 '18 at 20:53

1 Answers1

0

If "lzn_sg_clng" is converted to a factor, does this give you the map you desire? (rendering by the category rather than a graduated scale).

Stephen Clark
  • 573
  • 3
  • 18