sp và S4

Trực quan hóa dữ liệu địa lý trong R

Charlotte Wickham

Assistant Professor at Oregon State University

Hai kiểu đối tượng sp

summary(countries_sp)
Đối tượng lớp SpatialPolygons
Tọa độ:
   min       max
x -180 180.00000
y  -90  83.64513
Đã chiếu: FALSE 
proj4string :
[+proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 
  +towgs84=0,0,0]
summary(countries_spdf)
Đối tượng lớp SpatialPolygonsDataFrame
Tọa độ:
   min       max
x -180 180.00000
y  -90  83.64513
Đã chiếu: FALSE 
proj4string :
[+proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 
  +towgs84=0,0,0]
Thuộc tính dữ liệu:
     name              iso_a3          
 Độ dài:177        Độ dài:177        
 Lớp :character    Lớp :character    
 Chế độ:character  Chế độ:character
Trực quan hóa dữ liệu địa lý trong R

Đối tượng SpatialPolygons

str(countries_sp, max.level = 2)
Lớp hình thức 'SpatialPolygons' [gói "sp"] với 4 slot
  ..@ polygons   :Danh sách 177
  .. .. [đã rút gọn danh sách]
  ..@ plotOrder  : int [1:177] 7 136 28 169 31 23 9 66 84 5 ...
  ..@ bbox       : num [1:2, 1:2] -180 -90 180 83.6
  .. ..- attr(*, "dimnames")=Danh sách 2
  ..@ proj4string:Lớp hình thức 'CRS' [gói "sp"] với 1 slot
Trực quan hóa dữ liệu địa lý trong R

Đối tượng SpatialPolygonsDataFrame

str(countries_spdf, max.level = 2)
Lớp hình thức 'SpatialPolygonsDataFrame' [gói "sp"] với 5 slot
  ..@ data       :'data.frame':    177 quan sát của 6 biến:
  ..@ polygons   :Danh sách 177
  .. .. [đã rút gọn danh sách]
  ..@ plotOrder  : int [1:177] 7 136 28 169 31 23 9 66 84 5 ...
  ..@ bbox       : num [1:2, 1:2] -180 -90 180 83.6
  .. ..- attr(*, "dimnames")=Danh sách 2
  ..@ proj4string:Lớp hình thức 'CRS' [gói "sp"] với 1 slot
Trực quan hóa dữ liệu địa lý trong R

S4

  • Một trong các hệ thống hướng đối tượng (OO) của R
  • Khái niệm OO chính
    • Class: định nghĩa kiểu đối tượng, thuộc tính và quan hệ với lớp khác
    • Methods: hàm, hành vi phụ thuộc lớp của đầu vào
  • Đối tượng S4 có thể đệ quy, phần tử gọi là slot
  • http://adv-r.had.co.nz/OO-essentials.html#s4
Trực quan hóa dữ liệu địa lý trong R

Truy cập các slot

# 1. Dùng phương thức chuyên dụng
proj4string(countries_sp)
"+proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0"
# 2. Dùng @ theo sau là tên slot (không có ngoặc kép)
countries_sp@proj4string
CRS arguments: +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0
# 3. Dùng slot() với tên slot có ngoặc kép
slot(countries_sp, "proj4string")
CRS arguments: +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0
Trực quan hóa dữ liệu địa lý trong R

Ayo berlatih!

Trực quan hóa dữ liệu địa lý trong R

Preparing Video For Download...