Eigene Palette in tmap
Anders als in ggplot2, wo du eine benutzerdefinierte Farbskala in einem scale_-Aufruf setzt, werden Farben in tmap-Layern direkt in dem Layer angegeben, in dem sie gemappt werden. Zum Beispiel, ein Plot der Variable age_18_24 aus prop_by_age:
tm_shape(prop_by_age) +
tm_raster(col = "age_18_24")
Da die Farbe im Aufruf von tm_raster() gemappt wird, erfolgt auch die Angabe der Palette in diesem Aufruf. Du gibst einfach einen Vektor von Farben im Argument palette an. Das ist ein weiterer Grund, warum es sich lohnt, Wege zu lernen, um einen Farbvektor zu erzeugen. Auch wenn verschiedene Pakete sehr unterschiedliche Abkürzungen haben können, um Paletten aus Farbpaketen anzugeben, gibt es im Allgemeinen immer eine Möglichkeit, einen Vektor von Farben zu übergeben.
Verwenden wir für diesen Plot einige Paletten aus der letzten Übung.
Diese Übung ist Teil des Kurses
Geodaten in R visualisieren
Anleitung zur Übung
- Verwende im ersten Plot die Palette
blupsstatt der Standardpalette. - Verwende im zweiten Plot die Palette
virstatt der Standardpalette. - Verwende im dritten Plot die Palette
rev(mag)statt der Standardpalette.rev()kehrt einfach die Reihenfolge eines Vektors um, d. h. es werden dieselben Farben genutzt, nur in umgekehrter Reihenfolge.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Generate palettes from last time
library(RColorBrewer)
blups <- brewer.pal(9, "BuPu")
library(viridisLite)
vir <- viridis(9)
mag <- magma(9)
# Use the blups palette
tm_shape(prop_by_age) +
tm_raster("age_18_24") +
tm_legend(position = c("right", "bottom"))
# Use the vir palette
tm_shape(prop_by_age) +
tm_raster("age_18_24") +
tm_legend(position = c("right", "bottom"))
# Use the mag palette but reverse the order
tm_shape(prop_by_age) +
tm_raster("age_18_24") +
tm_legend(position = c("right", "bottom"))