1. Nauka
  2. /
  3. Kursy
  4. /
  5. Wizualizacja danych geoprzestrzennych w R

Connected

ćwiczenie

Budowanie wykresu warstwami

Skoro wiesz już nieco więcej o tmap(), zbudujmy poprzedni wykres populacji warstwami i wprowadźmy kilka poprawek, które go ulepszą. Zaczynasz od warstwy tm_shape(), która określa dane, a następnie dodajesz warstwę tm_fill(), aby pokolorować wielokąty według zmiennej population:

tm_shape(countries_spdf) +
  tm_fill(col = "population") 

Największym problemem z otrzymanym wykresem jest to, że skala kolorów nie jest zbyt czytelna: pierwszy kolor (najbledszy żółty) obejmuje wszystkie kraje z populacją poniżej 200 milionów! Ponieważ skala kolorów jest powiązana z warstwą tm_fill(), wszelkie zmiany tej skali wprowadza się w tym wywołaniu. O kolorach dowiesz się znacznie więcej w rozdziale 3, ale na razie wiedz, że argument style kontroluje sposób doboru przedziałów.

Wykres potrzebuje też konturów krajów. Możesz dodać do tego warstwę tm_borders(), ale nie rób jej zbyt wyrazistej wizualnie. Brązowy kolor powinien być w sam raz.

Korzyść ze stosowania obiektów przestrzennych staje się naprawdę widoczna, gdy zmienisz rodzaj tworzonego wykresu. Spróbujmy też wykresu bąbelkowego, w którym rozmiar bąbelków odpowiada populacji. W ggplot2 wymagałoby to sporego przekształcania danych – w tmap wystarczy zamienić jedną warstwę.

Instrukcje

100 XP
  • Dodaj style = "quantile" do tm_fill(). Dzięki temu przedziały skali kolorów są dobierane tak, by w każdym z nich znalazła się równa liczba obserwacji.
  • Do tego samego wykresu dodaj warstwę tm_borders() z argumentem col = "burlywood4".
  • Utwórz nowy wykres identyczny z pierwszym, ale zamiast tm_fill() dodaj warstwę tm_bubbles() z argumentem size odwzorowanym na populację.