Dodawanie etykiet dzielnic
Etykiety dzielnic są tak długie i duże, że zasłaniają dane. Przyjrzyj się kolumnie manhat_hoods$NTAName. Zobaczysz, że niektóre dzielnice to tak naprawdę połączenie kilku miejsc. Jednym ze sposobów na skrócenie nazw jest podzielenie ich na kilka wierszy. Na przykład:
Midtown-Midtown South
można zamienić na:
Midtown /
Midtown
South
Możesz to zrobić, korzystając z funkcji gsub() z bazowego R. Funkcja gsub() zastępuje pierwszy argument drugim argumentem w ciągach znaków podanych jako trzeci argument. Na przykład gsub("a", "A", x) zamienia wszystkie wystąpienia "a" w x na "A".
Możesz też poeksperymentować z rozmiarem tekstu, aby zmniejszyć wpływ nazw dzielnic na czytelność mapy.
To ćwiczenie jest częścią kursu
Wizualizacja danych geoprzestrzennych w R
Instrukcje do ćwiczenia
- Utwórz nową kolumnę
namewmanhat_hoods, używając funkcjigsub(), aby zastąpić wszystkie spacje (" ") znakami nowego wiersza ("\n") wmanhat_hoods$NTAName. - Zaktualizuj kolumnę
namewmanhat_hoods, używając funkcjigsub(), aby zastąpić wszystkie myślniki ("-") ukośnikiem i znakiem nowego wiersza ("/\n") wmanhat_hoods$name. - Zmodyfikuj wykres tak, aby argument
textmiał wartość"name", a parametrsizebył ustawiony na 0.5.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
library(tmap)
# gsub() to replace " " with "\n"
# gsub() to replace "-" with "/\n"
# Edit to map text to name, set size to 0.5
tm_shape(nyc_tracts_merge) +
tm_fill(col = "estimate") +
tm_shape(water) +
tm_fill(col = "grey90") +
tm_shape(manhat_hoods) +
tm_borders() +
tm_text(text = "NTAName")