library(ggmap)
basemap <- get_googlemap(zoom = 15, scale = 4,format="png8", maptype="terrain")
ggmap(basemap) # OK
switch_bg <- function(x) {
xc <- col2rgb(x)
g <- xc["green",]
b <- xc["blue",]
xc["green",] <- b
xc["blue",] <- g
rgb(xc[1,], xc[2,], xc[3,], maxColorValue=255)
}
basemap[] <- switch_bg(basemap)
class(basemap) <- c("ggmap", "raster")
ggmap(basemap) # Does not plot
I want to manipulate the color of a ggmap. Since the raster is a matrix of colors, I thought I can just update the matrix. However, assigning to the matrix removes the class and somehow breaks the object.
Why?
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…