Začněte nyníZačněte zdarma

Převod mezi souřadnicovými referenčními systémy a projekcemi

Převod z jednoho CRS nebo projekce do jiného zajišťují metody spTransform() z balíčku rgdal. spTransform() funguje pro všechny objekty sp, včetně SpatialPolygonsDataFrame, ale nefunguje pro objekty raster. Transformace rastru je totiž o něco složitější – transformovaná obdélníková mřížka totiž po převodu obdélníkový tvar nezachová. Pokud tě transformace rastrů zajímá, podívej se na ?raster::projectRaster.

Samotná transformace je jednoduchá. Prvním argumentem funkce spTransform(), x, je prostorový objekt, který chceš transformovat, a druhým, CRS, je specifikace cílového CRS. CRS lze zadat pomocí PROJ4 řetězce, který bys mohl/a sestavit ručně, ale je mnohem pohodlnější ho převzít z existujícího objektu (například pomocí funkce proj4string()).

Je čas převést oba datové sety polygonů do stejného CRS.

Toto cvičení je součástí kurzu

Vizualizace geoprostorových dat v R

Zobrazit kurz

Pokyny k cvičení

  • Transformuj neighborhoods tak, aby měl stejný CRS jako nyc_tracts, pomocí funkce spTransform() s argumentem CRS nastaveným na proj4string(nyc_tracts).
  • Ověř transformaci tím, že se podíváš na výstup head() funkce coordinates(neighborhoods).
  • Zkontroluj, zda jsou teď datové sety správně zarovnány: vykresli neighborhoods, pak nyc_tracts s add = TRUE a col = "red", a nakonec water s add = TRUE a col = "blue".

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

library(sp)
library(raster)

# Use spTransform on neighborhoods: neighborhoods



# head() on coordinates() of neighborhoods


# Plot neighborhoods, nyc_tracts and water


Upravit a spustit kód