ÎncepețiÎncepe gratuit

Un exemplu calitativ

În final, să analizăm un exemplu cu o variabilă categorială. Rasterul land_cover conține o clasificare pe grilă a suprafeței terestre. Examinează land_cover afișând conținutul său:

land_cover

Vei observa că valorile (values) sunt numerice, însă există atribute (attributes) care asociază aceste numere cu categorii (similar cu modul în care funcționează factorii în R).

Alegerea culorilor pentru variabile categoriale depinde în mare măsură de scopul graficului. Când vrei ca toate categoriile să aibă aproximativ același impact vizual – adică să nu iasă niciuna în evidență față de celelalte – o abordare este să folosești culori cu nuanțe diferite, dar cu cromaticitate egală (o măsură a vibrației culorii) și luminozitate egală (acesta este comportamentul implicit al scalelor de culori discrete în ggplot2 și poate fi generat cu funcția hcl()).

Paletele calitative din RColorBrewer echilibrează greutatea vizuală egală a culorilor cu ușurința identificării acestora. Schemele "paired" și "accent" se abat de la acest principiu, oferind perechi de culori cu luminozitate diferită, respectiv o paletă cu culori mai intense, utile pentru a evidenția anumite categorii.

Pentru aceste date în particular, ar putea fi mai intuitiv să alegi culori sugestive, cum ar fi verde pentru pădure și albastru pentru apă. Indiferent de abordare, setarea unor culori noi se reduce la transmiterea unui vector de culori prin argumentul palette al stratului tm_*** corespunzător.

Acest exercițiu face parte din cursul

Vizualizarea datelor geospațiale în R

Vezi cursul

Instrucțiuni pentru exercițiu

  • Reprezintă grafic rasterul land_cover combinând tm_shape() și tm_raster(). Implicit, tmap folosește paleta calitativă "Set3" din RColorBrewer.
  • Examinează codul pentru hcl_cols, care reproduce paleta folosită de ggplot2. Apoi reprezintă din nou rasterul land_cover, transmițând hcl_cols argumentului palette din tm_raster().
  • Apelează levels() pe land_cover pentru a vedea categoriile.
  • De data aceasta, folosește intuitive_cols ca paletă și adaugă un strat tm_legend() cu argumentul position = c("left", "bottom").

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

library(raster)

# Plot land_cover



# Palette like the ggplot2 default
hcl_cols <- hcl(h = seq(15, 375, length = 9), 
                c = 100, l = 65)[-9]

# Use hcl_cols as the palette



# Examine levels of land_cover


# A set of intuitive colors
intuitive_cols <- c(
  "darkgreen",
  "darkolivegreen4",
  "goldenrod2",
  "seagreen",
  "wheat",
  "slategrey",
  "white",
  "lightskyblue1"
)

# Use intuitive_cols as palette


Editează și rulează codul