Ich habe Probleme beim Plotten eines Rasters mit Faktorwerten mit ggplot2.Plot Rasterfaktorwerte mit ggplot
library(ggplot2)
library(raster)
ersten Lastrasterdaten
f <- system.file("external/test.grd", package="raster")
r <- raster(f)
Extrakt Koordinaten und Werte
val <- getValues(r)
xy <- as.data.frame(xyFromCell(r,1:ncell(r)))
xy <- cbind(xy,val)
Plot das Gitter unter Verwendung geom_raster(). Alles funktioniert gut.
ggplot(xy, aes(x=x, y=y, fill=val)) + geom_raster() + coord_equal()
Ich habe kein kontinuierliches Raster, aber ein klassifiziertes. Reklassieren Sie das Raster:
r <- reclass(r, c(0,500,1, 500,2000,2))
val <- getValues(r)
xy <- as.data.frame(xyFromCell(r,1:ncell(r)))
xy <- cbind(xy,val)
plotten Sie das klassifizierte Raster. Auch OK, aber Legende kontinuierlich ist
ggplot(na.omit(xy), aes(x=x, y=y, fill=val)) + geom_raster() + coord_equal()
wenn ich die Werte als Faktor plotten, die Karte falsch wird
ggplot(na.omit(xy), aes(x=x, y=y, fill=factor(val))) + geom_raster() + coord_equal()