Kom igångKom igång gratis

Konvertera från ett CRS/projektion till ett annat

Processen att konvertera från ett CRS eller en projektion till ett annat hanteras av metoderna spTransform() i paketet rgdal. spTransform() har metoder för alla sp-objekt, inklusive SpatialPolygonsDataFrame, men fungerar inte på raster-objekt. Det beror på att transformering av ett raster är lite mer komplicerat – det transformerade rektangulära rutnätet är inte längre rektangulärt. Du kan titta på ?raster::projectRaster om du är nyfiken på hur raster transformeras.

Själva transformeringen är enkel. Det första argumentet till spTransform(), x, är det rumsliga objekt som ska transformeras, och det andra, CRS, anger önskat CRS. CRS kan specificeras med en PROJ4-sträng, som du kan konstruera för hand, men det är mycket enklare att hämta den från ett befintligt objekt (t.ex. med funktionen proj4string()).

Dags att få dina två polygondataset i samma CRS.

Den här övningen är en del av kursen

Visualisering av geospatial data i R

Visa kurs

Övningsinstruktioner

  • Transformera neighborhoods så att det får samma CRS som nyc_tracts genom att använda spTransform() med argumentet CRS satt till proj4string(nyc_tracts).
  • Verifiera transformeringen genom att titta på head() av coordinates(neighborhoods).
  • Kontrollera att dataseten nu stämmer överens genom att plotta neighborhoods, sedan plotta nyc_tracts med add = TRUE och col = "red", och slutligen plotta water med add = TRUE och col = "blue".

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

library(sp)
library(raster)

# Use spTransform on neighborhoods: neighborhoods



# head() on coordinates() of neighborhoods


# Plot neighborhoods, nyc_tracts and water


Redigera och kör kod