[R-sig-Geo] Plotting Raster using values from RAT
nevil amos
nev||@@mo@ @end|ng |rom gm@||@com
Mon Oct 11 08:28:54 CEST 2021
Hi
Is there any way to colour a raster by values in a raster attribute table
that do not correspond 1:1 with the levels() /ID value in the raster
attribute table.
The example in the rasterVis documentation
https://oscarperpinan.github.io/rastervis/#factor has the categories
aligned with the levels.
Here is what I would like to achieve
r<-raster(matrix(sample(1:9,100,replace=T),10,10))
plot(r)
levels(r)
r<-ratify(r)
df<-data.frame(ID=1:9,
Grouping1=sample(LETTERS[1:3],9,replace=T),
NewValue = rnorm(9),
Grouping2 = sample(LETTERS[4:8],9,replace=T))
rat<-merge(levels(r)[[1]],df)
print(rat)
levels(r)<-rat
plot(r)
rasterVis::levelplot(r,att="Grouping1")
rasterVis::levelplot(r,att="Grouping2")
rasterVis::levelplot(r,att="NewValue")
# in all three cases the colouring of the raster remains the same (
according to the levels() or ID).
# and the legend only adds a label to each of those levels
#I would like to be able to colour the raster according to the unique
values in the "groupings" and the legend to have one row for each unique
value - eg Grouping 1 legend would have 3 colours corresponding to A B C
or on a colour scale for the numeric "NewValue", without reclassifying the
raster.
[[alternative HTML version deleted]]
More information about the R-sig-Geo
mailing list