Bắt đầu ngayBắt đầu miễn phí

Bản đồ với phạm vi hẹp hơn

Chúng ta có thể hạn chế khả năng kéo bản đồ ra khỏi khu vực trọng tâm bằng đối số options trong hàm leaflet(). Bằng cách đặt minZoomdragging, bạn có thể tạo một bản đồ web tương tác luôn tập trung vào một khu vực cụ thể.

leaflet(options = 
        leafletOptions(minZoom = 14, dragging = FALSE))  %>% 
  addProviderTiles("CartoDB")  %>% 
  setView(lng = -73.98575, lat = 40.74856, zoom = 14) 

Ngoài ra, nếu bạn muốn người dùng có thể kéo bản đồ nhưng vẫn đảm bảo họ không đi quá xa, bạn có thể đặt ranh giới tối đa của bản đồ bằng cách chỉ định hai góc chéo của một hình chữ nhật.

Bạn sẽ dùng dc_hq để tạo một bản đồ với ô gạch nền "CartoDB" được căn giữa tại văn phòng DataCamp ở Bỉ.

Bài tập này là một phần của khóa học

Bản đồ tương tác với leaflet trong R

Xem khóa học

Hướng dẫn bài tập

  • Dùng mức thu phóng tối thiểu là 12.
  • Đặt tùy chọn dragging thành TRUE.
  • Đặt ranh giới tối đa cách trụ sở 0,05 độ thập phân.

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.

leaflet(options = leafletOptions(
                    # Set minZoom and dragging 
                    minZoom = ___, dragging = FALSE))  %>% 
  addProviderTiles("CartoDB")  %>% 
  
  # Set default zoom level 
  setView(lng = dc_hq$lon[2], lat = dc_hq$lat[2], zoom = 14) %>% 
  
  # Set max bounds of map 
  setMaxBounds(lng1 = dc_hq$lon[2] + ___, 
               lat1 = dc_hq$lat[2] + .05, 
               lng2 = dc_hq$lon[2] - ___, 
               lat2 = dc_hq$lat[2] - .05) 
Chỉnh sửa và Chạy Mã