Lägga till stadsdelsetiketter
Stadsdelsetiketterna är så långa och stora att de skymmer våra data. Ta en titt på manhat_hoods$NTAName. Du ser att vissa stadsdelar egentligen är en kombination av ett par platser. Ett sätt att göra namnen lite mer kompakta är att dela upp dem på flera rader. Till exempel kan
Midtown-Midtown South
omvandlas till
Midtown /
Midtown
South
Det gör du med hjälp av funktionen gsub() i bas-R. gsub() ersätter det första argumentet med det andra argumentet i strängarna som anges i det tredje argumentet. Till exempel ersätter gsub("a", "A", x) alla "a" i x med "A".
Du kan också experimentera med textstorleken för att minska stadsdelsnamnens påverkan på kartan.
Den här övningen är en del av kursen
Visualisering av geospatial data i R
Övningsinstruktioner
- Skapa en ny kolumn
nameimanhat_hoodsgenom att användagsub()för att ersätta alla mellanslag (" ") med radbrytningar ("\n") imanhat_hoods$NTAName. - Uppdatera
nameimanhat_hoodsgenom att användagsub()för att ersätta alla bindestreck ("-") med ett snedstreck följt av radbrytning ("/\n") imanhat_hoods$name. - Redigera din plot så att
textmappas till"name"ochsizesätts till 0.5.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
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")