Trích chọn các khu lân cận
Bạn không cần tất cả các khu lân cận thừa ở New York, nên hãy chỉ giữ lại các khu thuộc New York County. Bạn đã biết cách làm rồi!
neighborhoods là một SpatialPolygonsDataFrame và ở Chương 2 bạn đã học cách trích chọn dựa trên cột trong data slot. Mấu chốt là tạo một vector logic, rồi trích chọn SpatialPolygonsDataFrame như một data frame.
Làm sao để nhận diện đúng các khu lân cận? Xem thử:
head(neighborhoods@data)
CountyFIPS là một mã số dùng để nhận diện quận (county). Nếu bạn tìm được mã của New York County, bạn có thể chỉ giữ lại các dòng có giá trị đó.
Bài tập này là một phần của khóa học
Trực quan hóa dữ liệu địa lý trong R
Hướng dẫn bài tập
- Đối tượng
nyc_tracts_mergecũng có mã quận trong cộtCOUNTYFP. Dùngunique()để tìm giá trị mã của New York County. - Trích chọn
neighborhoodsbằng cách thêm một biểu thức logic kiểm tra xemneighborhoods$CountyFIPScó giá trị đúng hay không. - Chỉnh sửa biểu đồ để dùng
manhat_hoodsthay cho neighborhoods. - Thêm một lớp
tm_text(), ánh xạtextđến"NTAName".
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
library(tmap)
# Find unique() nyc_tracts_merge$COUNTYFP
# Add logical expression to pull out New York County
manhat_hoods <- neighborhoods[___, ]
tm_shape(nyc_tracts_merge) +
tm_fill(col = "estimate") +
tm_shape(water) +
tm_fill(col = "grey90") +
# Edit to use manhat_hoods instead
tm_shape(neighborhoods) +
tm_borders() +
# Add a tm_text() layer