開始使用免費開始

加入鄰里標籤

鄰里標籤太長又太大,會遮蔽資料。先看一下 manhat_hoods$NTAName。你會發現有些鄰里其實是由幾個地點組合而成。為了讓名稱更精簡,可以把它們拆成多行。例如,將

Midtown-Midtown South

改成

Midtown /
Midtown 
South

要做到這點,你可以使用 base R 的 gsub() 函式。gsub() 會把第一個引數以第二個引數取代,套用在第三個引數提供的字串上。例如,gsub("a", "A", x) 會把 x 中所有的 "a" 都替換成 "A"。

你也可以調整文字大小,減少鄰里名稱對地圖的干擾。

本練習屬於課程

在 R 視覺化地理空間資料

檢視課程

練習說明

  • 在 manhat_hoods 中建立新的欄位 name,使用 gsub() 把 manhat_hoods$NTAName 中所有空白(" ")替換為換行("\n")。
  • 使用 gsub() 更新 manhat_hoods 中的 name,把所有連字號("-")替換為斜線加換行("/\n"),套用在 manhat_hoods$name。
  • 編輯你的圖,將 text 對應到 "name",並將 size 設為 0.5。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

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")
編輯並執行程式碼