sp et S4

Visualiser des données géospatiales avec R

Charlotte Wickham

Assistant Professor at Oregon State University

Deux types d'objets sp

summary(countries_sp)
Objet de classe SpatialPolygons
Coordonnées :
   min       max
x -180 180.00000
y  -90  83.64513
Projetté : FALSE 
proj4string :
[+proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 
  +towgs84=0,0,0]
summary(countries_spdf)
Objet de classe SpatialPolygonsDataFrame
Coordonnées :
   min       max
x -180 180.00000
y  -90  83.64513
Projetté : FALSE 
proj4string :
[+proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 
  +towgs84=0,0,0]
Attributs des données :
     name              iso_a3          
 Longueur :177      Longueur :177      
 Classe :character  Classe :character  
 Mode   :character  Mode   :character
Visualiser des données géospatiales avec R

Objet SpatialPolygons

str(countries_sp, max.level = 2)
Classe formelle « SpatialPolygons » [package "sp"] avec 4 créneaux
  ..@ polygons   :Liste de 177
  .. .. [sortie de liste tronquée]
  ..@ 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")=Liste de 2
  ..@ proj4string:Classe formelle « CRS » [package "sp"] avec 1 créneau
Visualiser des données géospatiales avec R

Objet SpatialPolygonsDataFrame

str(countries_spdf, max.level = 2)
Classe formelle « SpatialPolygonsDataFrame » [package "sp"] avec 5 créneaux
  ..@ data       :'data.frame':    177 obs. de 6 variables :
  ..@ polygons   :Liste de 177
  .. .. [sortie de liste tronquée]
  ..@ 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")=Liste de 2
  ..@ proj4string:Classe formelle « CRS » [package "sp"] avec 1 créneau
Visualiser des données géospatiales avec R

S4

  • Un des systèmes orientés objet (OO) de R
  • Concepts clés de l'OO
    • Classe : définit un type d'objet, ses attributs et ses liens avec d'autres classes
    • Méthodes : fonctions dont le comportement dépend de la classe en entrée
  • Les objets S4 peuvent être récursifs ; leurs éléments sont des « créneaux » (slots)
  • http://adv-r.had.co.nz/OO-essentials.html#s4
Visualiser des données géospatiales avec R

Accéder aux créneaux

# 1. Utiliser une méthode dédiée
proj4string(countries_sp)
"+proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0"
# 2. Utiliser @ suivi du nom de créneau non cité
countries_sp@proj4string
Arguments CRS : +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0
# 3. Utiliser slot() avec le nom de créneau entre guillemets
slot(countries_sp, "proj4string")
Arguments CRS : +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0
Visualiser des données géospatiales avec R

Passons à la pratique !

Visualiser des données géospatiales avec R

Preparing Video For Download...